-- IDL module extracted from ITU-T T.174  (10/1996)

//======================================================================== typedef sequence<long> ApplicationIdentifier; // Corresponding MHEG datatype: Object-Number //======================================================================== typedef long ObjectNumber; // Interface: MhObject Operation: bind // Interface: MhObject Operation: prepare // Interface: MhObject Operation: getIdentifier // Corresponding MHEG datatype: MHEG-Identifier //======================================================================== struct MHEGIdentifier { sequence<ApplicationIdentifier,1> application_identifier; ObjectNumber object_number; }; // Corresponding MHEG datatype: Public-Identifier //======================================================================== typedef string PublicIdentifier; // Corresponding MHEG datatype: System-Identifier //======================================================================== typedef string SystemIdentifier; // Corresponding MHEG datatype: External-Long-Identifier //======================================================================== struct ExternalLongIdentifier { PublicIdentifier public_identifier; SystemIdentifier system_identifier; }; // Corresponding MHEG datatype: Alias //======================================================================== typedef string Alias; // Corresponding MHEG datatype: Container-Child-Reference //======================================================================== enum ContainerChildReference { CHILD, DESCENDANT }; // Interface: MhObject Operation: getPreparationStatus // Corresponding MHEG datatype: Preparation-Status-Value //======================================================================== enum PreparationStatusValue { READY, NOT_READY, PROCESSING }; // Interface: MhMultiplexedContent Operation: setMultiplex // Interface: MhMultiplexedContent Operation: setDemultiplex // Interface: RtMultiplexedContentOrPresentableSocket Operation: setStreamChoice // Corresponding MHEG datatype: Stream-Identifier //======================================================================== typedef sequence<long> StreamIdentifier; // Corresponding MHEG datatype: Rt-Dynamic-Reference //======================================================================== enum RtDynamicReference { QUESTION_MARK, STAR }; // Interface: RtObject Operation: getAvailabilityStatus // Corresponding MHEG datatype: Rt-Availibility-Status-Value //======================================================================== enum RtAvailabilityStatusValue { RT_AVAILABILITY_STATUS_VALUE_AVAILABLE, RT_AVAILABILITY_STATUS_VALUE_NOT_AVAILABLE, RT_AVAILABILITY_STATUS_VALUE_PROCESSING }; // Interface: RtObject Operation: getRunningStatus // Corresponding MHEG datatype: Running-Status-Value //======================================================================== enum RunningStatusValue { RUNNING_STATUS_VALUE_RUNNING, RUNNING_STATUS_VALUE_NOT_RUNNING, RUNNING_STATUS_VALUE_PROCESSING }; // Interface: RtScript Operation: getTerminationStatus // Corresponding MHEG datatype: Termination-Status-Value //======================================================================== enum TerminationStatusValue { TERMINATED, NOT_TERMINATED }; // Interface: RtComponentOrSocket Operation: setRGS // Interface: Channel Operation: getIdentifier // Corresponding MHEG datatype: Channel-Identifier //======================================================================== typedef long ChannelIdentifier; // Corresponding MHEG datatype: Priority-Level //======================================================================== enum PriorityLevel { INCREMENT_PRIORITY, DECREMENT_PRIORITY }; // Interface: RtComponentOrSocket Operation: setVisibleDuration // Corresponding MHEG datatype: Temporal-Position //======================================================================== enum TemporalPositionTag { SPECIFIED_TEMPORAL_POINT_TAG, LOGICAL_TEMPORAL_PD_POINT_TAG }; union TemporalPosition switch (TemporalPositionTag){ case SPECIFIED_TEMPORAL_POINT_TAG: long specified_temporal_point; case LOGICAL_TEMPORAL_PD_POINT_TAG: long logical_temporal_PD_point; }; // Interface: RtComponentOrSocket Operation: setCurrentTemporalPosition // Corresponding MHEG datatype: Current-Temporal-Position //======================================================================== enum CurrentTemporalPositionTag { CURRENT_TEMPORAL_POSITION_SPECIFIED_TEMPORAL_POINT_TAG, CURRENT_TEMPORAL_POSITION_LOGICAL_TEMPORAL_VD_POINT_TAG }; union CurrentTemporalPosition switch (CurrentTemporalPositionTag){ case CURRENT_TEMPORAL_POSITION_SPECIFIED_TEMPORAL_POINT_TAG: long specified_temporal_point; case CURRENT_TEMPORAL_POSITION_LOGICAL_TEMPORAL_VD_POINT_TAG: long logical_temporal_vd_point; }; // Interface: RtComponentOrSocket Operation: setTemporalTermination // Interface: RtComponentOrSocket Operation: getTemporalTermination // Corresponding MHEG datatype: Temporal-Termination //======================================================================== enum TemporalTermination { TEMPORAL_TERMINATION_FREEZE, TEMPORAL_TERMINATION_STOP }; // Interface: RtComponentOrSocket Operation: setSpeed // Corresponding MHEG datatype: Speed //======================================================================== enum SpeedTag { SPECIFIED_OGTR_TAG, SPEED_RATE_TAG, SCALING_FACTOR_TAG }; union Speed switch (SpeedTag){ case SPECIFIED_OGTR_TAG: long specified_OGTR; case SPEED_RATE_TAG: long speed_rate; case SCALING_FACTOR_TAG: long scaling_factor; }; // Corresponding MHEG datatype: Timestone-Position //======================================================================== enum TimestonePositionTag { TIMESTONE_POSITION_SPECIFIED_TEMPORAL_POINT_TAG, TIMESTONE_POSITION_LOGICAL_TEMPORAL_PD_POINT_TAG, TIMESTONE_POSITION_LOGICAL_TEMPORAL_VD_POINT_TAG }; union TimestonePosition switch (TimestonePositionTag){ case TIMESTONE_POSITION_SPECIFIED_TEMPORAL_POINT_TAG: long specified_temporal_point; case TIMESTONE_POSITION_LOGICAL_TEMPORAL_PD_POINT_TAG: long logical_temporal_PD_point; case TIMESTONE_POSITION_LOGICAL_TEMPORAL_VD_POINT_TAG: long logical_temporal_VD_point; }; // Interface: RtComponentOrSocket Operation: getVDLength // Corresponding MHEG datatype: GT-Indicator //======================================================================== enum GTIndicator { OGTU, RGTU }; // Corresponding MHEG datatype: Perceptible-Projection //======================================================================== enum PerceptibleProjectionTag { SPECIFIED_SIZE_TAG, IOGSR_SCALING_FACTOR_TAG, COGSR_SCALING_FACTOR_TAG }; union PerceptibleProjection switch (PerceptibleProjectionTag){ case SPECIFIED_SIZE_TAG: long specified_size; case IOGSR_SCALING_FACTOR_TAG: long iogsr_scaling_factor; case COGSR_SCALING_FACTOR_TAG: long cogsr_scaling_factor; }; // Interface: RtComponentOrSocket Operation: setAspectRatioPreserved // Interface: RtComponentOrSocket Operation: getAspectRatio // Corresponding MHEG datatype: Aspect-Ratio //======================================================================== enum AspectRatio { PRESERVED, NOT_PRESERVED }; // Interface: RtComponentOrSocket Operation: setVisibleSize // Interface: RtComponentOrSocket Operation: getVSGS // Corresponding MHEG datatype: VSGS //======================================================================== enum VSGS { THIS, RELATIVE }; // Corresponding MHEG datatype: Size-Attribute //======================================================================== enum SizeAttributeTag { SIZE_ATTRIBUTE_SPECIFIED_SIZE_TAG, SIZE_ATTRIBUTE_IVS_RELATIVE_TAG, SIZE_ATTRIBUTE_CVS_RELATIVE_TAG }; union SizeAttribute switch (SizeAttributeTag){ case SIZE_ATTRIBUTE_SPECIFIED_SIZE_TAG: long specified_size; case SIZE_ATTRIBUTE_IVS_RELATIVE_TAG: long ivs_relative; case SIZE_ATTRIBUTE_CVS_RELATIVE_TAG: long cvs_relative; }; // Interface: RtComponentOrSocket Operation: setVisibleSizesAdjustment // Corresponding MHEG datatype: Adjustment-Axis //======================================================================== enum AdjustmentAxis { X_AXIS, Y_AXIS, Z_AXIS }; // Corresponding MHEG datatype: Sub-Socket-Reference //======================================================================== enum SubSocketReference { SUB_SOCKET_REFERENCE_CHILD, SUB_SOCKET_REFERENCE_DESCENDANT, SUB_SOCKET_REFERENCE_QUESTION_MARK_CHILD, SUB_SOCKET_REFERENCE_QUESTION_MARK_DESCENDANT }; // Interface: RtComponentOrSocket Operation: setBox // Interface: RtComponentOrSocket Operation: getBox // Corresponding MHEG datatype: Box-Constants //======================================================================== enum BoxConstants { PRESENTED, NOT_PRESENTED }; // Interface: RtComponentOrSocket Operation: setAttachmentPointPosition // Corresponding MHEG datatype: Reference-Type //======================================================================== enum ReferenceType { VSIAP, VSEAP }; // Interface: RtComponentOrSocket Operation: setAttachmentPoint // Interface: RtComponentOrSocket Operation: setAttachmentPointPosition // Corresponding MHEG datatype: Attachment-Point-Type //======================================================================== enum AttachmentPointType { ATTACHMENT_POINT_TYPE_PSAP, ATTACHMENT_POINT_TYPE_VSIAP, ATTACHMENT_POINT_TYPE_VSEAP }; // Interface: RtComponentOrSocket Operation: setVisibleSizesAlignment // Corresponding MHEG datatype: Size-Border //======================================================================== enum SizeBorder { TOP, BOTTOM, RIGHT, LEFT, UPPER_Z, LOWER_Z, CENTER_X, CENTER_Y, CENTER_Z }; // Interface: RtComponentOrSocket Operation: setMovingAbility // Interface: RtComponentOrSocket Operation: setResizingAbility // Interface: RtComponentOrSocket Operation: setScalingAbility // Interface: RtComponentOrSocket Operation: setScrollingAbility // Interface: RtComponentOrSocket Operation: getMovingAbility // Interface: RtComponentOrSocket Operation: getResizingAbility // Interface: RtComponentOrSocket Operation: getScalingAbility // Interface: RtComponentOrSocket Operation: getScrollingAbility // Corresponding MHEG datatype: User-Controls //======================================================================== enum UserControls { ALLOWED, NOT_ALLOWED }; // Interface: RtComponentOrSocket Operation: getPS // Corresponding MHEG datatype: GS-Indicator //======================================================================== enum GSIndicator { OGSU, RGSU }; // Interface: RtComponentOrSocket Operation: getPSAP // Interface: RtComponentOrSocket Operation: getVSIAP // Corresponding MHEG datatype: Point-Type //======================================================================== enum PointType { RELATIVE_POINT, ABSOLUTE_POINT }; // Interface: RtComponentOrSocket Operation: setSelectionStatus // Interface: RtComponentOrSocket Operation: getSelectionStatus // Corresponding MHEG datatype: Selection-Status-Value //======================================================================== enum SelectionStatusValue { SELECTED, NOT_SELECTED }; // Interface: RtComponentOrSocket Operation: // setSelectionPresentationEffectResponsibility // Interface: RtComponentOrSocket Operation: // getSelectionPresentationEffectResponsibility // Interface: RtComponentOrSocket Operation: // setModificationPresentationEffectResponsibility // Interface: RtComponentOrSocket Operation: // getModificationPresentationEffectResponsibility // Corresponding MHEG datatype: Responsibility //======================================================================== enum Responsibility { MHEG_ENGINE, AUTHOR }; // Interface: RtComponentOrSocket Operation: getEffectiveSelectability // Corresponding MHEG datatype: Effective-Selectability //======================================================================== enum EffectiveSelectability { EFFECTIVELY_SELECTABLE, EFFECTIVELY_NOT_SELECTABLE }; // Interface: RtComponentOrSocket Operation: setModificationStatus // Interface: RtComponentOrSocket Operation: getModificationStatus // Corresponding MHEG datatype: Modification-Status-Value //======================================================================== enum ModificationStatusValue { MODIFIED, MODIFYING, NOT_MODIFIED }; // Interface: RtComponentOrSocket Operation: getEffectiveModifiability // Corresponding MHEG datatype: Effective-Modifiability //======================================================================== enum EffectiveModifiability { EFFECTIVELY_MODIFIABLE, EFFECTIVELY_NOT_MODIFIABLE }; // Interface: RtCompositeOrStructuralSocket Operation: setResizingStrategy // Interface: RtCompositeOrStructuralSocket Operation: getResizingStrategy // Corresponding MHEG datatype: Resizing-Strategy //======================================================================== enum ResizingStrategy { FIXED, MINIMUM, GROWS_ONLY }; // Interface: RtCompositeOrStructuralSocket Operation: setMenuInteractionStyle // Interface: RtCompositeOrStructuralSocket Operation: // setScrollingListInteractionStyle // Interface: RtContentOrPresentableSocket Operation: setSliderInteractionStyle // Corresponding MHEG datatype: Orientation //======================================================================== enum Orientation { HORIZONTAL, VERTICAL }; // Corresponding MHEG datatype: Presentation-Persistence //======================================================================== enum PresentationPersistence { PERSISTENT, NOT_PERSISTENT }; // Interface: RtCompositeOrStructuralSocket Operation: // setScrollingListInteractionStyle // Corresponding MHEG datatype: Slider-Side //======================================================================== enum SliderSide { SIDE1, SIDE2 }; // Interface: RtGenericContentOrPresentableSocket Operation: setAudibleVolume // Corresponding MHEG datatype: Audible-Volume //======================================================================== enum AudibleVolumeTag { SPECIFIED_VOLUME_TAG, LOGICAL_VOLUME_TAG, IOV_SCALING_FACTOR_TAG, OV_SCALING_FACTOR_TAG }; union AudibleVolume switch (AudibleVolumeTag){ case SPECIFIED_VOLUME_TAG: long specified_volume; case LOGICAL_VOLUME_TAG: long logical_volume; case IOV_SCALING_FACTOR_TAG: long iov_scaling_factor; case OV_SCALING_FACTOR_TAG: long ov_scaling_factor; }; // Interface: RtGenericContentOrPresentableSocket Operation: // setButtonInteractionStyle // Corresponding MHEG datatype: Presentation-State //======================================================================== enum PresentationState { SELECTABLE_NOT_SELECTED, SELECTABLE_SELECTED, NOT_SELECTABLE_SELECTED, NOT_SELECTABLE_NOT_SELECTED }; // Corresponding MHEG datatype: Echo-Mode //======================================================================== enum EchoMode { ITSELF, HIDDEN }; // Interface: RtContentOrPresentableSocket Operation: // setEntryFieldInteractionStyle // Corresponding MHEG datatype: Echo-Style //======================================================================== enum EchoStyleTag { MODE_TAG, SPECIFIED_TAG }; union EchoStyle switch (EchoStyleTag){ case MODE_TAG: EchoMode mode; case SPECIFIED_TAG: string specified; }; // Corresponding MHEG datatype: Channel-Reference //======================================================================== enum ChannelReferenceTag { CHANNEL_IDENTIFIER_TAG, ALIAS_TAG, NULL_CHANNEL_REFERENCE_TAG }; union ChannelReference switch (ChannelReferenceTag){ case CHANNEL_IDENTIFIER_TAG: ChannelIdentifier channel_identifier; case ALIAS_TAG: Alias alias; }; // Corresponding MHEG datatype: Interval //======================================================================== struct Interval { sequence<long,1> start_point; sequence<long,1> end_point; }; // Corresponding MHEG datatype: Generic-Volume-Range //======================================================================== struct GenericVolumeRange { sequence<long,1> maximum_volume; sequence<long,1> minimum_volume; }; // Interface: Channel Operation: new // Corresponding MHEG datatype: Original-Def-Declaration //======================================================================== struct OriginalDefDeclaration { sequence<long,1> generic_temporal_ratio; sequence<Interval,1> x_axis_interval; sequence<Interval,1> y_axis_interval; sequence<Interval,1> z_axis_interval; sequence<GenericVolumeRange,1> audible_volume_range_declaration; }; // Interface: Channel Operation: getAvailability // Corresponding MHEG datatype: Channel-Status-ValueCHANNEL-STATUS-VALUE- //======================================================================== enum ChannelStatusValue { CHANNEL_STATUS_VALUE_AVAILABLE, CHANNEL_STATUS_VALUE_NOT_AVAILABLE, CHANNEL_STATUS_VALUE_PROCESSING }; // Interface: Channel Operation: setPerceptability // Interface: Channel Operation: getPerceptability // Corresponding MHEG datatype: Channel-Perceptability-Values //======================================================================== enum ChannelPerceptabilityValue { ON, OFF }; // Interface: NotificationManager Operation: getNotification // Interface: MhContent Operation: getData // Corresponding MHEG datatype: Generic-Value //======================================================================== enum GenericValueTag { BOOLEAN_FIELD_TAG, NUMERIC_TAG, STRING_FIELD_TAG, GENERIC_LIST_TAG, UNSPECIFIED_TAG }; union GenericValue switch (GenericValueTag){ case BOOLEAN_FIELD_TAG: boolean boolean_field; case NUMERIC_TAG: long numeric; case STRING_FIELD_TAG: string string_field; case GENERIC_LIST_TAG: sequence<GenericValue> generic_list; }; // Corresponding MHEG datatype: Generic-String //======================================================================== enum GenericStringTag { GENERIC_STRING_CONSTANT_TAG, GENERIC_STRING_UNSPECIFIED_TAG }; union GenericString switch (GenericStringTag){ case GENERIC_STRING_CONSTANT_TAG: string constant; }; // Interface: Socket Operation: setVisibleDurationPosition // Corresponding MHEG datatype: Visible-Duration //======================================================================== enum VisibleDurationPositionTag { VISIBLE_DURATION_POSITION_SPECIFIED_TEMPORAL_POINT_TAG, VISIBLE_DURATION_POSITION_LOGICAL_TEMPORAL_PD_POINT_TAG, VISIBLE_DURATION_POSITION_LOGICAL_TEMPORAL_VD_POINT_TAG }; union VisibleDurationPosition switch (VisibleDurationPositionTag){ case VISIBLE_DURATION_POSITION_SPECIFIED_TEMPORAL_POINT_TAG: long specified_temporal_point; case VISIBLE_DURATION_POSITION_LOGICAL_TEMPORAL_PD_POINT_TAG: long logical_temporal_PD_point; case VISIBLE_DURATION_POSITION_LOGICAL_TEMPORAL_VD_POINT_TAG: long logical_temporal_VD_point; }; // Interface: RtComponentOrSocket Operation: getRGS // Corresponding MHEG datatype: none //======================================================================== enum RGSValueTag { RGS_VALUE_CHANNEL_IDENTIFIER_TAG, RGS_VALUE_NULL_CHANNEL_TAG, RGS_VALUE_PRGS_TAG }; union RGSValue switch (RGSValueTag){ case RGS_VALUE_CHANNEL_IDENTIFIER_TAG: ChannelIdentifier channel_identifier; }; // Corresponding MHEG datatype: Generic-Numeric //======================================================================== enum GenericNumericTag { GENERIC_NUMERIC_CONSTANT_TAG, GENERIC_NUMERIC_UNSPECIFIED_TAG }; union GenericNumeric switch (GenericNumericTag){ case GENERIC_NUMERIC_CONSTANT_TAG: long constant; }; // Interface: RtComponentOrSocket Operation: getSelectionMode // Corresponding MHEG datatype: none //======================================================================== enum SelectionModeValueTag { USER_INTERACTION_TAG, NO_SELECTION_TAG, MHEG_ACTION_TAG, USING_APPLICATION_ACTION_TAG }; union SelectionModeValue switch (SelectionModeValueTag){ case USER_INTERACTION_TAG: unsigned long user_interaction; }; // Interface: RtComponentOrSocket Operation: getModificationMode // Corresponding MHEG datatype: none //======================================================================== enum ModificationModeValueTag { MODIFICATION_MODE_VALUE_USER_INTERACTION_TAG, MODIFICATION_MODE_VALUE_NO_MODIFICATION_TAG, MODIFICATION_MODE_VALUE_MHEG_ACTION_TAG, MODIFICATION_MODE_VALUE_USING_APPLICATION_ACTION_TAG, MODIFICATION_MODE_VALUE_CHILD_TAG }; union ModificationModeValue switch (ModificationModeValueTag){ case MODIFICATION_MODE_VALUE_USER_INTERACTION_TAG: unsigned long user_interaction; }; // Corresponding MHEG datatype: External-Identifier //======================================================================== enum ExternalIdentifierTag { EXTERNAL_LONG_ID_TAG, PUBLIC_ID_TAG, SYSTEM_ID_TAG }; union ExternalIdentifier switch (ExternalIdentifierTag){ case EXTERNAL_LONG_ID_TAG: ExternalLongIdentifier external_long_id; case PUBLIC_ID_TAG: PublicIdentifier public_id; case SYSTEM_ID_TAG: SystemIdentifier system_id; }; // Corresponding MHEG datatype: Container-Tail //======================================================================== struct ContainerTail { sequence<long> indexes; enum ContainerTailTag { INDEX_TAG, CONTAINER_CHILD_REF_TAG } tag; union ContainerTail switch (ContainerTailTag){ case INDEX_TAG: long index; case CONTAINER_CHILD_REF_TAG: ContainerChildReference container_child_ref; } end; }; // Corresponding MHEG datatype: Specified-Sizes //======================================================================== struct SpecifiedSizes { sequence<GenericNumeric,1> x_axis_length; sequence<GenericNumeric,1> y_axis_length; sequence<GenericNumeric,1> z_axis_length; }; // Corresponding MHEG datatype: Attachment-Attribute //======================================================================== enum AttachmentAttributeTag { SPECIFIED_POSITION_TAG, LOGICAL_POSITION_TAG }; union AttachmentAttribute switch (AttachmentAttributeTag){ case SPECIFIED_POSITION_TAG: GenericNumeric specified_position; case LOGICAL_POSITION_TAG: GenericNumeric logical_position; }; // Corresponding MHEG datatype: Length-Attribute //======================================================================== enum LengthAttributeTag { SPECIFIED_LENGTH_TAG, RELATIVE_LENGTH_TAG }; union LengthAttribute switch (LengthAttributeTag){ case SPECIFIED_LENGTH_TAG: GenericNumeric specified_length; case RELATIVE_LENGTH_TAG: GenericNumeric relative_length; }; // Interface: RtComponentOrSocket Operation: getPS // Interface: RtComponentOrSocket Operation: getPSAP // Interface: RtComponentOrSocket Operation: getVS // Interface: RtComponentOrSocket Operation: getVSIAP // Interface: RtComponentOrSocket Operation: getVSIAPPosition // Interface: RtComponentOrSocket Operation: getVSEAP // Interface: RtComponentOrSocket Operation: getVSEAPPosition // Corresponding MHEG datatype: Specified-Position //======================================================================== struct SpecifiedPosition { GenericNumeric x_point; GenericNumeric y_point; GenericNumeric z_point; }; // Interface: RtComponentOrSocket Operation: setPresentationPriority // Corresponding MHEG datatype: Presentation-Priority //======================================================================== enum PresentationPriorityTag { GENERIC_NUMERIC_TAG, PRIORITY_LEVEL_TAG }; union PresentationPriority switch (PresentationPriorityTag){ case GENERIC_NUMERIC_TAG: GenericNumeric generic_numeric; case PRIORITY_LEVEL_TAG: PriorityLevel priority_level; }; // Interface: RtComponentOrSocket Operation: setTimestones // Corresponding MHEG datatype: Timestone //======================================================================== struct Timestone { long timestone_identifier; TimestonePosition timestone_position; }; // Interface: RtComponentOrSocket Operation: setVisibleSize // Corresponding MHEG datatype: none //======================================================================== enum VSTag { X_SIZE_ATTRIBUTE_TAG, Y_SIZE_ATTRIBUTE_TAG, Z_SIZE_ATTRIBUTE_TAG }; union VS switch (VSTag){ case X_SIZE_ATTRIBUTE_TAG: SizeAttribute x_size_attribute; case Y_SIZE_ATTRIBUTE_TAG: SizeAttribute y_size_attribute; case Z_SIZE_ATTRIBUTE_TAG: SizeAttribute z_size_attribute; }; // Interface: RtComponentOrSocket Operation: setAttachmentPoint // Corresponding MHEG datatype: none //======================================================================== struct AttachmentPoint { sequence<AttachmentAttribute,1> x_attachment; sequence<AttachmentAttribute,1> y_attachment; sequence<AttachmentAttribute,1> z_attachment; }; // Interface: RtComponentOrSocket Operation: setAttachmentPointPosition // Corresponding MHEG datatype: Lengths //======================================================================== struct Lengths { sequence<LengthAttribute,1> x_length; sequence<LengthAttribute,1> y_length; sequence<LengthAttribute,1> z_length; }; // Interface: RtMultiplexedContentOrPresentableSocket Operation: getStreamChosen // Corresponding MHEG datatype: none //======================================================================== enum StreamValueTag { STREAM_IDENTIFIER_TAG, NO_STREAM_CHOSEN_TAG }; union StreamValue switch (StreamValueTag){ case STREAM_IDENTIFIER_TAG: StreamIdentifier stream_identifier; }; // Interface: MhContent Operation: setData // Corresponding MHEG datatype: Data-Element //======================================================================== struct DataElement { sequence<long> element_list_index; GenericValue generic_value; }; // Interface: NotificationManager Operation: getNotification // Interface: MhObject Operation: bind // Interface: MhObject Operation: prepare // Interface: MhGenericContent Operation: copy // Corresponding MHEG datatype: Mh-Object-Reference //======================================================================== struct MhObjectReference { enum MhObjectReferenceHeadTag { MHEG_IDENTIFIER_TAG, EXTERNAL_IDENTIFIER_TAG, ALIAS_TAG, NULL_OBJECT_REF_TAG } head_tag; union MhObjectReferenceHead switch (MhObjectReferenceHeadTag){ case MHEG_IDENTIFIER_TAG: MHEGIdentifier mheg_identifier; case EXTERNAL_IDENTIFIER_TAG: ExternalIdentifier external_identifier; case ALIAS_TAG: Alias alias; } head; enum MhObjectReferenceTailTag { CONTAINER_ELEMENT_REFERENCE_TAG, OTHER_REFERENCE_TAG } tail_tag; union MhObjectReferenceTail switch (MhObjectReferenceTailTag){ case CONTAINER_ELEMENT_REFERENCE_TAG: ContainerTail container_tail; } tail; }; // Interface: RtComponentOrSocket Operation: setPerceptibleSizeProjection // Corresponding MHEG datatype: Perceptible-Size-Projection //======================================================================== struct PerceptibleSizeProjection { sequence<PerceptibleProjection,1> x_perceptible_size_projection; sequence<PerceptibleProjection,1> y_perceptible_size_projection; sequence<PerceptibleProjection,1> z_perceptible_size_projection; }; // Corresponding MHEG datatype: Rt-Object-Number-Reference //======================================================================== enum RtObjectNumberReferenceTag { RT_OBJECT_NUMBER_TAG, RT_DYNAMIC_REFERENCE_TAG }; union RtObjectNumberReference switch (RtObjectNumberReferenceTag){ case RT_OBJECT_NUMBER_TAG: long rt_object_number; case RT_DYNAMIC_REFERENCE_TAG: RtDynamicReference rt_dynamic_reference; }; // Interface: RtObject Operation: bind // Interface: RtObject Operation: new // Corresponding MHEG datatype: Rt-Object-Reference //======================================================================== struct RtObjectReference { MhObjectReference model_object_reference; RtObjectNumberReference rt_object_number_reference; }; // Corresponding MHEG datatype: Rt-Reference //======================================================================== enum RtReferenceTag { RT_REFERENCE_RT_OBJECT_REFERENCE_TAG, RT_REFERENCE_ALIAS_TAG, RT_REFERENCE_NULL_RT_OBJECT_TAG }; union RtReference switch (RtReferenceTag){ case RT_REFERENCE_RT_OBJECT_REFERENCE_TAG: RtObjectReference rt_object_reference; case RT_REFERENCE_ALIAS_TAG: Alias alias; }; // Corresponding MHEG datatype: Socket-Tail //======================================================================== struct SocketTail { sequence<long> indexes; enum SocketTailTag { INDEX_TAG, SUB_SOCKET_REF_TAG } tag; union SocketTail switch (SocketTailTag){ case INDEX_TAG: long index; case SUB_SOCKET_REF_TAG: SubSocketReference sub_socket_ref; } end; }; // Corresponding MHEG datatype: Indexed-Child-Socket //======================================================================== struct IndexedChildSocket { long index; SocketTail tail; }; // Interface: Socket Operation: bind // Interface: Socket Operation: getIdentification // Corresponding MHEG datatype: Socket-Identification //======================================================================== struct SocketIdentification { RtReference rt_composite_reference; SocketTail socket_tail; }; // Interface: Socket Operation: bind // Corresponding MHEG datatype: Socket-Reference //======================================================================== enum SocketReferenceTag { SOCKET_REFERENCE_SOCKET_IDENT_TAG, SOCKET_REFERENCE_ALIAS_TAG }; union SocketReference switch (SocketReferenceTag){ case SOCKET_REFERENCE_SOCKET_IDENT_TAG: SocketIdentification socket_ident; case SOCKET_REFERENCE_ALIAS_TAG: Alias alias; }; // Corresponding MHEG datatype: Rt-Object-Socket-Reference //======================================================================== enum RtObjectSocketReferenceTag { RT_REFERENCE_TAG, SOCKET_REFERENCE_TAG }; union RtObjectSocketReference switch (RtObjectSocketReferenceTag){ case RT_REFERENCE_TAG: RtReference rt_reference; case SOCKET_REFERENCE_TAG: SocketReference socket_reference; }; // Interface: RtCompositeOrStructuralSocket Operation: // setScrollingListInteractionStyle // Interface: RtContentOrPresentableSocket Operation: setSliderInteractionStyle // Interface: RtContentOrPresentableSocket Operation: // setEntryFieldInteractionStyle // Interface: Channel Operation: getAssignedPerceptibles // Corresponding MHEG datatype: Perceptible-Reference //======================================================================== enum PerceptibleReferenceTag { RT_COMPONENT_REFERENCE_TAG, RT_SOCKET_REFERENCE_TAG }; union PerceptibleReference switch (PerceptibleReferenceTag){ case RT_COMPONENT_REFERENCE_TAG: RtReference rt_component_reference; case RT_SOCKET_REFERENCE_TAG: SocketReference rt_socket_reference; }; // Interface: RtCompositeOrStructuralSocket Operation: // setScrollingListInteractionStyle // Corresponding MHEG datatype: Separator //======================================================================== enum SeparatorTag { NO_TAG, YES_DEFAULT_TAG, SEPARATOR_PIECE_TAG }; union Separator switch (SeparatorTag){ case SEPARATOR_PIECE_TAG: PerceptibleReference separator_piece; }; // Interface: RtCompositeOrStructuralSocket Operation: setMenuInteractionStyle // Corresponding MHEG datatype: Association //======================================================================== struct Association { sequence<SocketReference,1> title; sequence<Separator,1> separator; sequence<SocketReference,1> submenu; sequence<PresentationPersistence,1> submenu_presentation_persistence; sequence<Orientation,1> submenu_orientation; }; // Interface: RtSocket Operation: plug // Corresponding MHEG datatype: Plug-In //======================================================================== enum PlugInTag { PLUG_IN_RT_COMPONENT_REFERENCE_TAG, PLUG_IN_COMPONENT_REFERENCE_TAG, PLUG_IN_LABEL_TAG }; union PlugIn switch (PlugInTag){ case PLUG_IN_RT_COMPONENT_REFERENCE_TAG: RtObjectReference rt_component_reference; case PLUG_IN_COMPONENT_REFERENCE_TAG: MhObjectReference component_reference; case PLUG_IN_LABEL_TAG: GenericString label; }; // Interface: RtComponentOrSocket Operation: getVSEAPPosition // Corresponding MHEG datatype: none //======================================================================== enum ReferencePointTag { VSEAP_POSITION_ORIGIN_RGS_TAG, VSEAP_POSITION_ORIGIN_CGS_TAG, VSEAP_POSITION_SAME_RGS_COMPONENT_TAG, VSEAP_POSITION_SAME_CGS_COMPONENT_TAG, VSEAP_POSITION_SPECIFIED_POSITION_TAG }; union ReferencePoint switch (ReferencePointTag){ case VSEAP_POSITION_SAME_RGS_COMPONENT_TAG: RtObjectSocketReference same_RGS_component; case VSEAP_POSITION_SAME_CGS_COMPONENT_TAG: RtObjectSocketReference same_CGS_component; case VSEAP_POSITION_SPECIFIED_POSITION_TAG: SpecifiedPosition specified_position; }; // Interface: RtScript Operation: setParameters // Corresponding MHEG datatype: Parameter //======================================================================== enum ParameterTag { GENERIC_VALUE_TAG, MH_OBJECT_REFERENCE_TAG }; union Parameter switch (ParameterTag){ case GENERIC_VALUE_TAG: GenericValue generic_value; case MH_OBJECT_REFERENCE_TAG: MhObjectReference mh_object_reference; }; // Interface: RtObjectOrSocket Operation: setGlobalBehaviour // Corresponding MHEG datatype: Global-Behaviour //======================================================================== enum GlobalBehaviourTag { GLOBAL_BEHAVIOUR_RT_REFERENCE_TAG, GLOBAL_BEHAVIOUR_GENERIC_LIST_TAG, GLOBAL_BEHAVIOUR_UNSPECIFIED_TAG }; union GlobalBehaviour switch (GlobalBehaviourTag){ case GLOBAL_BEHAVIOUR_RT_REFERENCE_TAG: RtReference rt_reference; case GLOBAL_BEHAVIOUR_GENERIC_LIST_TAG: GenericValue generic_list; }; // Interface: RtComponentOrSocket Operation: setVisibleSizesAdjustment // Corresponding MHEG datatype: Adjustment-PolicyADJUSTMENT-POLICY- //======================================================================== enum AdjustmentPolicyTag { ADJUSTMENT_POLICY_COMPONENT_REFERENCE_TAG, ADJUSTMENT_POLICY_SPECIFIED_TAG, ADJUSTMENT_POLICY_GREATEST_TAG, ADJUSTMENT_POLICY_SMALLEST_TAG }; union AdjustmentPolicy switch (AdjustmentPolicyTag){ case ADJUSTMENT_POLICY_COMPONENT_REFERENCE_TAG: RtObjectSocketReference component_reference; case ADJUSTMENT_POLICY_SPECIFIED_TAG: SpecifiedSizes specified; }; // Interface: RtObject Operation: bind // Interface: RtObject Operation: new // Interface: RtObject Operation: getIdentifier // Corresponding MHEG datatype: none //======================================================================== struct RtObjectIdentifier { MHEGIdentifier model_object_id; long rt_object_number; }; // Interface: RtGenericContentOrPresentableSocket Operation: // setButtonInteractionStyle // Corresponding MHEG datatype: Alternate-Presentation-State //======================================================================== struct AlternatePresentation { PresentationState presentation_state; PerceptibleReference perceptible_target; }; // Exceptions //======================================================================== exception InvalidTarget { unsigned short period; }; enum CompletionStatus { YES, NO}; exception InvalidParameter { CompletionStatus completion_status; unsigned short period; }; typedef long EntityIdentifier; exception AlreadyBound { EntityIdentifier entity_identifier; }; exception NotBound {}; interface MHEGEngine { void initialiseEngine(); void shutdownEngine(); }; interface NotificationManager { sequence<unsigned short> getReturnability(); void getNotification( in unsigned short notification_number, out sequence<GenericValue> values, out sequence<MhObjectReference> objects) raises(InvalidParameter); }; interface EntityManager { sequence<MHEGIdentifier> getAvailableMhObjects(); sequence<RtObjectIdentifier> getAvailableRtObjects(); sequence<ChannelIdentifier> getAvailableChannels(); void releaseAlias( in string alias) raises(InvalidParameter); }; interface Entity { void setAlias( in string alias) raises(InvalidTarget); string getAlias() raises(InvalidTarget); }; interface MhObject: Entity { MHEGIdentifier bind( in MhObjectReference mh_object_reference) raises(AlreadyBound, InvalidTarget); void unbind() raises(NotBound); MHEGIdentifier prepare( in MhObjectReference mh_object_reference) raises(AlreadyBound, InvalidTarget); void destroy() raises(NotBound, InvalidTarget); PreparationStatusValue getPreparationStatus() raises(NotBound, InvalidTarget); MHEGIdentifier getIdentifier() raises(NotBound); void kill(); }; interface MhAction: MhObject { void delay( in unsigned short nested_action_number, in unsigned long delay) raises(InvalidTarget, InvalidParameter); }; interface MhLink: MhObject { void abort() raises(InvalidTarget); }; interface MhModel: MhObject {}; interface MhComponent: MhModel {}; interface MhGenericContent: MhComponent { void copy( in sequence<MhObjectReference> copies) raises(InvalidTarget, InvalidParameter); }; interface MhContent: MhGenericContent { void setData( in boolean substitution_indicator, in sequence<DataElement> data_elements) raises(InvalidTarget, InvalidParameter); GenericValue getData( in sequence<long> element_list_index) raises(InvalidTarget, InvalidParameter); }; interface MhMultiplexedContent: MhGenericContent { void setMultiplex( in sequence<StreamIdentifier> stream_list) raises(InvalidTarget, InvalidParameter); void setDemultiplex( in sequence<StreamIdentifier> stream_list) raises(InvalidTarget, InvalidParameter); }; interface MhComposite: MhComponent {}; interface MhScript: MhModel {}; interface MhContainer: MhObject {}; interface MhDescriptor: MhObject {}; interface RtObjectOrSocket { void setGlobalBehaviour( in GlobalBehaviour global_behaviour) raises(InvalidTarget, InvalidParameter); GenericValue getGlobalBehaviour() raises(InvalidTarget); void run() raises(InvalidTarget); void stop() raises(InvalidTarget); }; interface RtObject: Entity { RtObjectIdentifier bind( in RtObjectReference rt_object_reference) raises(AlreadyBound, InvalidTarget); void unbind() raises(NotBound); RtObjectIdentifier new( in RtObjectReference rt_object_reference) raises(AlreadyBound, InvalidTarget); void delete() raises(NotBound, InvalidTarget); RtAvailabilityStatusValue getAvailabilityStatus() raises(NotBound, InvalidTarget); RtObjectIdentifier getIdentifier() raises(NotBound); void kill(); RunningStatusValue getRunningStatus() raises(InvalidTarget); }; interface Socket: Entity, RtObjectOrSocket { SocketIdentification bind( in SocketReference socket_reference) raises(AlreadyBound, InvalidTarget); void unbind() raises(NotBound); SocketIdentification getIdentifier(); void kill(); void plug( in PlugIn plug_in) raises(InvalidTarget); void setVisibleDurationPosition( in VisibleDurationPosition visible_duration_position) raises(InvalidTarget, InvalidParameter); unsigned long getVisibleDurationPosition() raises(InvalidTarget); }; interface RtScript: RtObject { void setParameters( in sequence<Parameter> parameters) raises(InvalidTarget); TerminationStatusValue getTerminationStatus() raises(InvalidTarget); }; interface RtComponentOrSocket { void setRGS( in ChannelIdentifier channel_identifier) raises(InvalidTarget); RGSValue getRGS() raises(InvalidTarget); void setOpacity( in unsigned short opacity_rate, in unsigned long transition_duration) raises(InvalidTarget); void setPresentationPriority( in PresentationPriority presentation_priority, in unsigned long transition_duration) raises(InvalidTarget, InvalidParameter); unsigned short getOpacity() raises(InvalidTarget); unsigned short getEffectiveOpacity() raises(InvalidTarget); unsigned short getPresentationPriority() raises(InvalidTarget); void setVisibleDuration( in TemporalPosition initial_temporal_position, in TemporalPosition terminal_temporal_position) raises(InvalidTarget, InvalidParameter); void setTemporalTermination( in TemporalTermination temporal_termination) raises(InvalidTarget); void setCurrentTemporalPosition( in TemporalPosition temporal_position) raises(InvalidTarget, InvalidParameter); void setSpeed( in Speed the_speed, in unsigned long transition_duration) raises(InvalidTarget, InvalidParameter); void setTimestones( in sequence<Timestone> timestones) raises(InvalidTarget, InvalidParameter); unsigned long getInitialTemporalPosition() raises(InvalidTarget); unsigned long getTerminalTemporalPosition() raises(InvalidTarget); unsigned long getVDLength( in GTIndicator gt_indicator) raises(InvalidTarget); TemporalTermination getTemporalTermination() raises(InvalidTarget); unsigned long getCurrentTemporalPosition() raises(InvalidTarget); short getSpeedRate() raises(InvalidTarget); unsigned long getOGTR() raises(InvalidTarget); short getEffectiveSpeedRate() raises(InvalidTarget); unsigned long getEffectiveOGTR() raises(InvalidTarget); unsigned short getTimestoneStatus() raises(InvalidTarget); void setPerceptibleSizeProjection( in PerceptibleSizeProjection perceptible_size_projection, in unsigned long transition_duration) raises(InvalidTarget, InvalidParameter); void setAspectRatio( in AspectRatio preserved) raises(InvalidTarget); void setVisibleSize( in VSGS the_vsgs, in VS the_vs, in unsigned long transition_duration) raises(InvalidTarget, InvalidParameter); void setVisibleSizesAdjustment( in sequence<AdjustmentAxis> set_of_axes, in AdjustmentPolicy adjustment_policy, in unsigned long transition_duration) raises(InvalidTarget); void setBox( in BoxConstants box) raises(InvalidTarget); void setDefaultBackground( in unsigned short background, in unsigned long transition_duration) raises(InvalidTarget, InvalidParameter); void setAttachmentPoint( in AttachmentPointType type, in AttachmentPoint positions) raises(InvalidTarget, InvalidParameter); void setAttachmentPointPosition( in AttachmentPointType type, in ReferenceType vseap_reference_point, in Lengths the_lengths, in unsigned long transition_duration) raises(InvalidTarget, InvalidParameter); void setVisibleSizesAlignment( in SizeBorder size_border, in long interval, in unsigned long transition_duration) raises(InvalidTarget); void setMovingAbility( in UserControls moving_ability) raises(InvalidTarget); void setResizingAbility( in UserControls resizing_ability) raises(InvalidTarget); void setScalingAbility( in UserControls scaling_ability) raises(InvalidTarget); void setScrollingAbility( in UserControls scrolling_ability) raises(InvalidTarget); unsigned short getGSR() raises(InvalidTarget); SpecifiedPosition getPS( in GSIndicator gs) raises(InvalidTarget); AspectRatio getAspectRatio() raises(InvalidTarget); SpecifiedPosition getPSAP( in PointType point_type) raises(InvalidTarget); VSGS getVSGS() raises(InvalidTarget); SpecifiedPosition getVS() raises(InvalidTarget); BoxConstants getBox() raises(InvalidTarget); unsigned short getDefaultBackground() raises(InvalidTarget); SpecifiedPosition getVSIAP( in PointType point_type) raises(InvalidTarget); SpecifiedPosition getVSIAPPosition() raises(InvalidTarget); SpecifiedPosition getVSEAP( in PointType point_type) raises(InvalidTarget); SpecifiedPosition getVSEAPPosition( in ReferencePoint reference_point) raises(InvalidTarget); UserControls getMovingAbility() raises(InvalidTarget); UserControls getResizingAbility() raises(InvalidTarget); UserControls getScalingAbility() raises(InvalidTarget); UserControls getScrollingAbility() raises(InvalidTarget); void setSelectability( in unsigned short min_number_of_selections, in unsigned short max_number_of_selections) raises(InvalidTarget, InvalidParameter); void setSelectionStatus( in SelectionStatusValue selection_state) raises(InvalidTarget); void setSelectionPresentationEffectResponsibility( in Responsibility the_responsibility) raises(InvalidTarget); void getSelectability( out unsigned short min_number_of_selections, out unsigned short max_number_of_selections) raises(InvalidTarget); EffectiveSelectability getEffectiveSelectability() raises(InvalidTarget); SelectionStatusValue getSelectionStatus() raises(InvalidTarget); SelectionModeValue getSelectionMode() raises(InvalidTarget); Responsibility getSelectionPresentationEffectResponsibility() raises(InvalidTarget); void setModifiability( in unsigned short min_number_of_modifications, in unsigned short max_number_of_modifications) raises(InvalidTarget, InvalidParameter); void setModificationStatus( in ModificationStatusValue modification_state) raises(InvalidTarget); void setModificationPresentationEffectResponsibility( in Responsibility the_responsibility) raises(InvalidTarget); void getModifiability( out unsigned short min_numbers_of_modifications, out unsigned short max_numbers_of_modifications) raises(InvalidTarget); EffectiveModifiability getEffectiveModifiability() raises(InvalidTarget); ModificationStatusValue getModificationStatus() raises(InvalidTarget); ModificationModeValue getModificationMode() raises(InvalidTarget); Responsibility getModificationPresentationEffectResponsibility() raises(InvalidTarget); void setNoInteractionStyle() raises(InvalidTarget); }; interface RtComponent: RtComponentOrSocket, RtObject {}; interface RtCompositeOrStructuralSocket { void setResizingStrategy( in ResizingStrategy resizing_strategy) raises(InvalidTarget); ResizingStrategy getResizingStrategy() raises(InvalidTarget); void setAudibleCompositionEffect( in unsigned short audible_effect, in unsigned long transition_duration) raises(InvalidTarget); unsigned short getAudibleCompositionEffect() raises(InvalidTarget); unsigned short getNumberOfSelectedSockets() raises(InvalidTarget); unsigned short getNumberOfModifiedSockets() raises(InvalidTarget); void setMenuInteractionStyle( in Orientation upper_menu_orientation, in sequence <Association> list_of_associations) raises(InvalidTarget, InvalidParameter); void setScrollingListInteractionStyle( in PerceptibleReference background, in unsigned short visible_items_number, in SocketTail first_item, in Separator the_separator, in Orientation the_orientation, in SliderSide slider_side, in PerceptibleReference slider, in PerceptibleReference slider_cursor, in PerceptibleReference slider_background, in long slider_min_value, in long slider_max_value) raises(InvalidTarget, InvalidParameter); }; interface RtComposite: RtCompositeOrStructuralSocket, RtComponent {}; interface StructuralSocket: RtCompositeOrStructuralSocket, Socket {}; interface RtGenericContentOrPresentableSocket { void setAudibleVolume( in AudibleVolume audible_volume, in unsigned long transition_duration) raises(InvalidTarget, InvalidParameter); unsigned long getInitialOriginalAudibleVolume() raises(InvalidTarget); unsigned long getCurrentOriginalAudibleVolume() raises(InvalidTarget); unsigned long getEffectiveOriginalAudibleVolume() raises(InvalidTarget); unsigned long getPerceptibleAudibleVolume() raises(InvalidTarget); void setButtonInteractionStyle( in PresentationState initial_state, in AlternatePresentation alternate_presentation_1, in AlternatePresentation alternate_presentation_2, in AlternatePresentation alternate_presentation_3) raises(InvalidTarget, InvalidParameter); }; interface RtGenericContent: RtGenericContentOrPresentableSocket, RtComponent {}; interface GenericPresentableSocket: RtGenericContentOrPresentableSocket, Socket {}; interface RtContentOrPresentableSocket { void setSliderInteractionStyle( in PerceptibleReference cursor, in PerceptibleReference background, in Orientation the_orientation, in short min_value, in short max_value) raises(InvalidTarget, InvalidParameter); void setEntryFieldInteractionStyle( in EchoStyle echo_style, in PerceptibleReference background) raises(InvalidTarget, InvalidParameter); }; interface RtContent: RtContentOrPresentableSocket, RtGenericContent {}; interface PresentableSocket: RtContentOrPresentableSocket, GenericPresentableSocket {}; interface RtMultiplexedContentOrPresentableSocket { void setStreamChoice( in StreamIdentifier stream_identifier) raises(InvalidTarget, InvalidParameter); StreamValue getStreamChosen() raises(InvalidTarget); }; interface RtMultiplexedContent: RtMultiplexedContentOrPresentableSocket, RtGenericContent {}; interface MultiplexedPresentableSocket: RtMultiplexedContentOrPresentableSocket, GenericPresentableSocket {}; interface Channel: Entity { ChannelIdentifier bind( in ChannelReference channel_reference) raises(AlreadyBound, InvalidTarget); void unbind() raises(NotBound); ChannelIdentifier new( in ChannelReference channel_reference, in OriginalDefDeclaration original_definition_declaration) raises(AlreadyBound, InvalidTarget); void delete() raises(NotBound, InvalidTarget); ChannelStatusValue getAvailability() raises(NotBound, InvalidTarget); ChannelIdentifier getIdentifier() raises(NotBound); void kill(); void setPerceptability( in ChannelPerceptabilityValue channel_perceptability) raises(InvalidTarget); ChannelPerceptabilityValue getPerceptability() raises(InvalidTarget); sequence<PerceptibleReference> getAssignedPerceptibles() raises(InvalidTarget); }; module x { interface EvaluatedValue; // Corresponding MHEG datatype: RGS-Constants //======================================================================== enum RGSConstants { NULL_CHANNEL, PRGS }; // Corresponding MHEG datatype: Stream-Chosen //======================================================================== enum StreamChosen { NO_STREAM_CHOSEN }; // Corresponding MHEG datatype: Selection-Mode-Constants //======================================================================== enum SelectionModeConstants { NO_SELECTION, MHEG_ACTION, USING_APPLICATION_ACTION }; // Corresponding MHEG datatype: Modification-Mode-Constants //======================================================================== enum ModificationModeConstants { MODIFICATION_MODE_CONSTANTS_NO_MODIFICATION, MODIFICATION_MODE_CONSTANTS_MHEG_ACTION, MODIFICATION_MODE_CONSTANTS_USING_APPLICATION_ACTION, MODIFICATION_MODE_CONSTANTS_CHILD }; // Corresponding MHEG datatype: Comparison-Value-Constant //======================================================================== enum ComparisonValueConstantTag { TEMPORAL_TERMINATION_TAG, RESIZING_STRATEGY_TAG, VSGS_TAG, RESPONSIBILITY_TAG, PREPARATION_STATUS_VALUE_TAG, RT_AVAILABILITY_STATUS_VALUE_TAG, RUNNING_STATUS_VALUE_TAG, TERMINATION_STATUS_VALUE_TAG, RGS_CONSTANTS_TAG, USER_CONTROLS_TAG, ASPECT_RATIO_TAG, BOX_CONSTANTS_TAG, STREAM_CHOSEN_TAG, EFFECTIVE_SELECTABILITY_TAG, SELECTION_STATUS_VALUE_TAG, SELECTION_MODE_CONSTANTS_TAG, EFFECTIVE_MODIFIABILITY_TAG, MODIFICATION_STATUS_VALUE_TAG, MODIFICATION_MODE_CONSTANTS_TAG, CHANNEL_STATUS_VALUE_TAG, CHANNEL_PERCEPTABILITY_VALUES_TAG }; union ComparisonValueConstant switch (ComparisonValueConstantTag){ case TEMPORAL_TERMINATION_TAG: TemporalTermination temporal_termination; case RESIZING_STRATEGY_TAG: ResizingStrategy resizing_strategy; case VSGS_TAG: VSGS vsgs; case RESPONSIBILITY_TAG: Responsibility responsibility; case PREPARATION_STATUS_VALUE_TAG: PreparationStatusValue preparation_status_value; case RT_AVAILABILITY_STATUS_VALUE_TAG: RtAvailabilityStatusValue rt_availability_status_value; case RUNNING_STATUS_VALUE_TAG: RunningStatusValue running_status_value; case TERMINATION_STATUS_VALUE_TAG: TerminationStatusValue termination_status_value; case RGS_CONSTANTS_TAG: RGSConstants rgs_constants; case USER_CONTROLS_TAG: UserControls user_controls; case ASPECT_RATIO_TAG: AspectRatio aspect_ratio; case BOX_CONSTANTS_TAG: BoxConstants box_constants; case STREAM_CHOSEN_TAG: StreamChosen stream_chosen; case EFFECTIVE_SELECTABILITY_TAG: EffectiveSelectability effective_selectability; case SELECTION_STATUS_VALUE_TAG: SelectionStatusValue selection_status_value; case SELECTION_MODE_CONSTANTS_TAG: SelectionModeConstants selection_mode_constants; case EFFECTIVE_MODIFIABILITY_TAG: EffectiveModifiability effective_modifiability; case MODIFICATION_STATUS_VALUE_TAG: ModificationStatusValue modification_status_value; case MODIFICATION_MODE_CONSTANTS_TAG: ModificationModeConstants modification_mode_constants; case CHANNEL_STATUS_VALUE_TAG: ChannelStatusValue channel_status_value; case CHANNEL_PERCEPTABILITY_VALUES_TAG: ChannelPerceptabilityValue channel_perceptability_value; }; // Corresponding MHEG datatype: Data-Reference //======================================================================== enum DataReferenceTag { EXTERNAL_IDENTIFIER_TAG,ALIAS_TAG }; union DataReference switch (DataReferenceTag){ case EXTERNAL_IDENTIFIER_TAG: ExternalIdentifier external_identifier; case ALIAS_TAG: Alias alias; }; // Corresponding MHEG datatype: Reference //======================================================================== enum ReferenceTag { MHEG_OBJECT_REF_TAG, RT_OBJECT_REF_TAG, CHANNEL_ID_TAG, SOCKET_IDENT_REF_TAG, NULL_REF_TAG }; union Reference switch (ReferenceTag){ case MHEG_OBJECT_REF_TAG: MhObjectReference mh_object_ref; case RT_OBJECT_REF_TAG: RtObjectReference rt_object_ref; case CHANNEL_ID_TAG: ChannelIdentifier channel_id; case SOCKET_IDENT_REF_TAG: SocketIdentification socket_ident_ref; }; // Corresponding MHEG datatype: Generic-Reference //======================================================================== enum GenericReferenceTag { REFERENCE_TAG, EVALUATED_VALUE_TAG, UNSPECIFIED_TAG }; union GenericReference switch (GenericReferenceTag){ case REFERENCE_TAG: Reference reference; case EVALUATED_VALUE_TAG: EvaluatedValue evaluated_value; }; // Corresponding MHEG datatype: Macro-Def-Id //======================================================================== enum MacroDefIdTag { STRING_FIELD_TAG, NUMERIC_TAG }; union MacroDefId switch (MacroDefIdTag){ case STRING_FIELD_TAG: string string_field; case NUMERIC_TAG: long numeric; }; // Corresponding MHEG datatype: Target-Macro //======================================================================== struct TargetMacro { MacroDefId macro_def_id; sequence<GenericReference,1> generic_reference; }; // Corresponding MHEG datatype: Target-Parameter //======================================================================== enum TargetParameterTag { GENERIC_REFERENCE_TAG, TARGET_MACRO_TAG }; union TargetParameter switch (TargetParameterTag){ case GENERIC_REFERENCE_TAG: GenericReference generic_reference; case TARGET_MACRO_TAG: TargetMacro target_macro; }; // Corresponding MHEG datatype: Targets-Parameter //======================================================================== typedef sequence<TargetParameter> TargetsParameter; // Corresponding MHEG datatype: Mh-Target-Macro //======================================================================== struct MhTargetMacro { MacroDefId macro_def_id; sequence<MhObjectReference,1> mh_object_reference; }; // Corresponding MHEG datatype: Mh-Target-Parameter //======================================================================== enum MhTargetParameterTag { MH_REFERENCE_TAG, EVALUATED_TARGET_TAG, MH_TARGET_MACRO_TAG }; union MhTargetParameter switch (MhTargetParameterTag){ case MH_REFERENCE_TAG: MhObjectReference mh_reference; case EVALUATED_TARGET_TAG: EvaluatedValue evaluated_target; case MH_TARGET_MACRO_TAG: MhTargetMacro mh_target_macro; }; // Corresponding MHEG datatype: Mh-Targets-Parameter //======================================================================== typedef sequence<MhTargetParameter> MhTargetsParameter; // Corresponding MHEG datatype: Rt-Target-Macro //======================================================================== struct RtTargetMacro { MacroDefId macro_def_id; sequence<RtReference,1> rt_reference; }; // Corresponding MHEG datatype: Rt-Target-Parameter //======================================================================== enum RtTargetParameterTag { RT_TARGET_PARAMETER_RT_REFERENCE_TAG, RT_TARGET_PARAMETER_EVALUATED_TARGET_TAG, RT_TARGET_PARAMETER_RT_TARGET_MACRO_TAG }; union RtTargetParameter switch (RtTargetParameterTag){ case RT_TARGET_PARAMETER_RT_REFERENCE_TAG: RtReference rt_reference; case RT_TARGET_PARAMETER_EVALUATED_TARGET_TAG: EvaluatedValue evaluated_target; case RT_TARGET_PARAMETER_RT_TARGET_MACRO_TAG: RtTargetMacro rt_target_macro; }; // Corresponding MHEG datatype: Rt-Targets-Parameter //======================================================================== typedef sequence<RtTargetParameter> RtTargetsParameter; // Corresponding MHEG datatype: Socket-Target-Macro //======================================================================== struct SocketTargetMacro { MacroDefId macro_def_id; sequence<SocketReference,1> socket_reference; }; // Corresponding MHEG datatype: Socket-Target-Parameter //======================================================================== enum SocketTargetParameterTag { SOCKET_TARGET_PARAMETER_SOCKET_REFERENCE_TAG, SOCKET_TARGET_PARAMETER_EVALUATED_TARGET_TAG, SOCKET_TARGET_PARAMETER_SOCKET_TARGET_MACRO_TAG }; union SocketTargetParameter switch (SocketTargetParameterTag){ case SOCKET_TARGET_PARAMETER_SOCKET_REFERENCE_TAG: SocketReference socket_reference; case SOCKET_TARGET_PARAMETER_EVALUATED_TARGET_TAG: EvaluatedValue evaluated_target; case SOCKET_TARGET_PARAMETER_SOCKET_TARGET_MACRO_TAG: SocketTargetMacro socket_target_macro; }; // Corresponding MHEG datatype: Socket-Targets-Parameter //======================================================================== typedef sequence<SocketTargetParameter> SocketTargetsParameter; // Corresponding MHEG datatype: Rt-Socket-Target-Macro //======================================================================== struct RtSocketTargetMacro { MacroDefId macro_def_id; sequence<RtObjectSocketReference,1> rt_socket_reference; }; // Corresponding MHEG datatype: Rt-Socket-Target-Parameter //======================================================================== enum RtSocketTargetParameterTag { RT_SOCKET_TARGET_PARAMETER_RT_SOCKET_REFERENCE_TAG, RT_SOCKET_TARGET_PARAMETER_EVALUATED_TARGET_TAG, RT_SOCKET_TARGET_PARAMETER_RT_SOCKET_TARGET_MACRO_TAG }; union RtSocketTargetParameter switch (RtSocketTargetParameterTag){ case RT_SOCKET_TARGET_PARAMETER_RT_SOCKET_REFERENCE_TAG: RtObjectSocketReference rt_socket_reference; case RT_SOCKET_TARGET_PARAMETER_EVALUATED_TARGET_TAG: EvaluatedValue evaluated_target; case RT_SOCKET_TARGET_PARAMETER_RT_SOCKET_TARGET_MACRO_TAG: RtSocketTargetMacro rt_socket_target_macro; }; // Corresponding MHEG datatype: Rt-Socket-Targets-Parameter //======================================================================== typedef sequence<RtSocketTargetParameter> RtSocketTargetsParameter; // Corresponding MHEG datatype: Channel-Target-Macro //======================================================================== struct ChannelTargetMacro { MacroDefId macro_def_id; sequence<ChannelReference,1> channel_reference; }; // Corresponding MHEG datatype: Channel-Target-Parameter //======================================================================== enum ChannelTargetParameterTag { CHANNEL_TARGET_PARAMETER_CHANNEL_REFERENCE_TAG, CHANNEL_TARGET_PARAMETER_EVALUATED_TARGET_TAG, CHANNEL_TARGET_PARAMETER_CHANNEL_TARGET_MACRO_TAG }; union ChannelTargetParameter switch (ChannelTargetParameterTag){ case CHANNEL_TARGET_PARAMETER_CHANNEL_REFERENCE_TAG: ChannelReference channel_reference; case CHANNEL_TARGET_PARAMETER_EVALUATED_TARGET_TAG: EvaluatedValue evaluated_target; case CHANNEL_TARGET_PARAMETER_CHANNEL_TARGET_MACRO_TAG: ChannelTargetMacro channel_target_macro; }; // Corresponding MHEG datatype: Channel-Targets-Parameter //======================================================================== typedef sequence<ChannelTargetParameter> ChannelTargetsParameter; // Corresponding MHEG datatype: Element-List-Index-Macro //======================================================================== struct ElementListIndexMacro { MacroDefId macro_def_id; sequence<sequence<GenericNumeric>,1> generic_numeric_list; }; // Corresponding MHEG datatype: Element-List-Index-Parameter //======================================================================== enum ElementListIndexParameterTag { GENERIC_NUMERIC_LIST_TAG, ELEMENT_LIST_INDEX_MACRO_TAG }; union ElementListIndexParameter switch (ElementListIndexParameterTag){ case GENERIC_NUMERIC_LIST_TAG: sequence<GenericNumeric> generic_numeric_list; case ELEMENT_LIST_INDEX_MACRO_TAG: ElementListIndexMacro element_list_index_macro; }; // Corresponding MHEG datatype: Get-Data //======================================================================== struct GetData { MhTargetParameter content_target_parameter; sequence<ElementListIndexParameter,1> element_list_index_parameter; }; // Corresponding MHEG datatype: GT-Indicator-Macro //======================================================================== struct GTIndicatorMacro { MacroDefId macro_def_id; sequence<GTIndicator,1> gt_indicator; }; // Corresponding MHEG datatype: GT-Indicator-Parameter //======================================================================== enum GTIndicatorParameterTag { GT_INDICATOR_TAG, GT_INDICATOR_MACRO_TAG }; union GTIndicatorParameter switch (GTIndicatorParameterTag){ case GT_INDICATOR_TAG: GTIndicator gt_indicator; case GT_INDICATOR_MACRO_TAG: GTIndicatorMacro gt_indicator_macro; }; // Corresponding MHEG datatype: Get-PD //======================================================================== struct GetPD { RtSocketTargetParameter target; sequence<GTIndicatorParameter,1> gt_indicator; }; // Corresponding MHEG datatype: Get-VD-Length //======================================================================== struct GetVDLength { RtSocketTargetParameter target; GTIndicatorParameter gt_indicator; }; // Corresponding MHEG datatype: GS-Indicator-Macro //======================================================================== struct GSIndicatorMacro { MacroDefId macro_def_id; sequence<GSIndicator,1> gs_indicator; }; // Corresponding MHEG datatype: GS-Indicator-Parameter //======================================================================== enum GSIndicatorParameterTag { GS_INDICATOR_TAG, GS_INDICATOR_MACRO_TAG }; union GSIndicatorParameter switch (GSIndicatorParameterTag){ case GS_INDICATOR_TAG: GSIndicator gs_indicator; case GS_INDICATOR_MACRO_TAG: GSIndicatorMacro gs_indicator_macro; }; // Corresponding MHEG datatype: Perceptible-Size-Parameter //======================================================================== struct PerceptibleSizeParameter { RtSocketTargetParameter target; sequence<GSIndicatorParameter,1> generic_space; }; // Corresponding MHEG datatype: Point-Type-Macro //======================================================================== struct PointTypeMacro { MacroDefId macro_def_id; sequence<PointType,1> point_type; }; // Corresponding MHEG datatype: Point-Type-Parameter //======================================================================== enum PointTypeParameterTag { POINT_TYPE_TAG, POINT_TYPE_MACRO_TAG }; union PointTypeParameter switch (PointTypeParameterTag){ case POINT_TYPE_TAG: PointType point_type; case POINT_TYPE_MACRO_TAG: PointTypeMacro point_type_macro; }; // Corresponding MHEG datatype: AP-Parameter //======================================================================== struct APParameter { RtSocketTargetParameter target; sequence<PointTypeParameter,1> type; }; // Corresponding MHEG datatype: Reference-Point-Macro //======================================================================== struct ReferencePointMacro { MacroDefId macro_def_id; sequence<ReferencePoint,1> reference_point; }; // Corresponding MHEG datatype: Reference-Point-Parameter //======================================================================== enum ReferencePointParameterTag { REFERENCE_POINT_TAG, REFERENCE_POINT_MACRO_TAG }; union ReferencePointParameter switch (ReferencePointParameterTag){ case REFERENCE_POINT_TAG: ReferencePoint reference_point; case REFERENCE_POINT_MACRO_TAG: ReferencePointMacro reference_point_macro; }; // Corresponding MHEG datatype: VSEAP-Position-Parameter //======================================================================== struct VSEAPPositionParameter { RtSocketTargetParameter target; sequence<ReferencePointParameter,1> reference_point; }; // Corresponding MHEG datatype: Generic-Value //======================================================================== enum GenericValueTag { GENERIC_VALUE_BOOLEAN_FIELD_TAG, GENERIC_VALUE_NUMERIC_TAG, GENERIC_VALUE_STRING_FIELD_TAG, GENERIC_VALUE_GENERIC_LIST_TAG, GENERIC_VALUE_REFERENCE_TAG, GENERIC_VALUE_UNSPECIFIED_TAG, GENERIC_VALUE_EVALUATED_VALUE_TAG }; union GenericValue switch (GenericValueTag){ case GENERIC_VALUE_BOOLEAN_FIELD_TAG: boolean boolean_field; case GENERIC_VALUE_NUMERIC_TAG: long numeric; case GENERIC_VALUE_STRING_FIELD_TAG: string string_field; case GENERIC_VALUE_GENERIC_LIST_TAG: sequence<GenericValue> generic_list; case GENERIC_VALUE_REFERENCE_TAG: Reference reference; case GENERIC_VALUE_EVALUATED_VALUE_TAG: EvaluatedValue evaluated_value; }; // Corresponding MHEG datatype: Generic-Boolean //======================================================================== enum GenericBooleanTag { GENERIC_BOOLEAN_CONSTANT_TAG, GENERIC_BOOLEAN_EVALUATED_VALUE_TAG, GENERIC_BOOLEAN_UNSPECIFIED_TAG }; union GenericBoolean switch (GenericBooleanTag){ case GENERIC_BOOLEAN_CONSTANT_TAG: boolean constant; case GENERIC_BOOLEAN_EVALUATED_VALUE_TAG: EvaluatedValue evaluated_value; }; // Corresponding MHEG datatype: Generic-Numeric //======================================================================== enum GenericNumericTag { GENERIC_NUMERIC_CONSTANT_TAG, GENERIC_NUMERIC_EVALUATED_VALUE_TAG, GENERIC_NUMERIC_UNSPECIFIED_TAG }; union GenericNumeric switch (GenericNumericTag){ case GENERIC_NUMERIC_CONSTANT_TAG: long constant; case GENERIC_NUMERIC_EVALUATED_VALUE_TAG: EvaluatedValue evaluated_value; }; // Corresponding MHEG datatype: Generic-String //======================================================================== enum GenericStringTag { GENERIC_STRING_CONSTANT_TAG, GENERIC_STRING_EVALUATED_VALUE_TAG, GENERIC_STRING_UNSPECIFIED_TAG }; union GenericString switch (GenericStringTag){ case GENERIC_STRING_CONSTANT_TAG: string constant; case GENERIC_STRING_EVALUATED_VALUE_TAG: EvaluatedValue evaluated_value; }; // Corresponding MHEG datatype: Value-Macro //======================================================================== struct ValueMacro { MacroDefId macro_def_id; sequence<GenericValue,1> generic_value; }; // Corresponding MHEG datatype: Boolean-Macro //======================================================================== struct BooleanMacro { MacroDefId macro_def_id; sequence<GenericBoolean,1> generic_boolean; }; // Corresponding MHEG datatype: Numeric-Macro //======================================================================== struct NumericMacro { MacroDefId macro_def_id; sequence<GenericNumeric,1> generic_numeric; }; // Corresponding MHEG datatype: String-Macro //======================================================================== struct StringMacro { MacroDefId macro_def_id; sequence<GenericString,1> generic_string; }; // Corresponding MHEG datatype: Boolean-Parameter //======================================================================== enum BooleanParameterTag { GENERIC_BOOLEAN_TAG, BOOLEAN_MACRO_TAG }; union BooleanParameter switch (BooleanParameterTag){ case GENERIC_BOOLEAN_TAG: GenericBoolean generic_boolean; case BOOLEAN_MACRO_TAG: BooleanMacro boolean_macro; }; // Corresponding MHEG datatype: Numeric-Parameter //======================================================================== enum NumericParameterTag { GENERIC_NUMERIC_TAG, NUMERIC_MACRO_TAG }; union NumericParameter switch (NumericParameterTag){ case GENERIC_NUMERIC_TAG: GenericNumeric generic_numeric; case NUMERIC_MACRO_TAG: NumericMacro numeric_macro; }; // Corresponding MHEG datatype: String-Parameter //======================================================================== enum StringParameterTag { GENERIC_STRING_TAG, STRING_MACRO_TAG }; union StringParameter switch (StringParameterTag){ case GENERIC_STRING_TAG: GenericString generic_string; case STRING_MACRO_TAG: StringMacro string_macro; }; // Corresponding MHEG datatype: Value-Parameter //======================================================================== enum ValueParameterTag { GENERIC_VALUE_TAG, VALUE_MACRO_TAG }; union ValueParameter switch (ValueParameterTag){ case GENERIC_VALUE_TAG: GenericValue generic_value; case VALUE_MACRO_TAG: ValueMacro value_macro; }; // Corresponding MHEG datatype: Generic-Volume-Range //======================================================================== struct GenericVolumeRange { sequence<long,1> maximum_volume; sequence<long,1> minimum_volume; }; // Corresponding MHEG datatype: Original-Size //======================================================================== struct OriginalSize { sequence<long,1> x_length; sequence<long,1> y_length; sequence<long,1> z_length; }; // Corresponding MHEG datatype: Original-Perception //======================================================================== struct OriginalPerception { sequence<long,1> initial_GTR; sequence<long,1> original_duration; sequence<OriginalSize,1> original_size; sequence<GenericVolumeRange,1> audible_volume_range; sequence<long,1> original_volume; }; // Corresponding MHEG datatype: Content-Encoding-Identification //======================================================================== enum ContentEncodingIdentificationTag { MHEG_CONTENT_CATALOGUE_TAG, PROPRIETARY_CONTENT_CATALOGUE_TAG }; union ContentEncodingIdentification switch (ContentEncodingIdentificationTag){ case MHEG_CONTENT_CATALOGUE_TAG: long mheg_content_catalogue; case PROPRIETARY_CONTENT_CATALOGUE_TAG: long proprietary_content_catalogue; }; // Corresponding MHEG datatype: Content-Hook //======================================================================== struct ContentHook { ContentEncodingIdentification content_encoding_identification; string content_encoding_description; }; // Corresponding MHEG datatype: Script-Encoding-Identification //======================================================================== enum ScriptEncodingIdentificationTag { MHEG_SCRIPT_CATALOGUE_TAG, PROPRIETARY_SCRIPT_CATALOGUE_TAG }; union ScriptEncodingIdentification switch (ScriptEncodingIdentificationTag){ case MHEG_SCRIPT_CATALOGUE_TAG: long mheg_script_catalogue; case PROPRIETARY_SCRIPT_CATALOGUE_TAG: long proprietary_script_catalogue; }; // Corresponding MHEG datatype: Script-Hook //======================================================================== struct ScriptHook { ScriptEncodingIdentification script_encoding_identification; string script_encoding_description; }; // Corresponding MHEG datatype: Content-Classification //======================================================================== enum ContentClassificationTag { MHEG_CONTENT_CLASSIFICATION_TAG, PROPRIETARY_CONTENT_CLASSIFICATION_TAG }; union ContentClassification switch (ContentClassificationTag){ case MHEG_CONTENT_CLASSIFICATION_TAG: long mheg_content_classification; case PROPRIETARY_CONTENT_CLASSIFICATION_TAG: long proprietary_content_classification; }; // Corresponding MHEG datatype: Script-Classification //======================================================================== enum ScriptClassificationTag { MHEG_SCRIPT_CLASSIFICATION_TAG, PROPRIETARY_SCRIPT_CLASSIFICATION_TAG }; union ScriptClassification switch (ScriptClassificationTag){ case MHEG_SCRIPT_CLASSIFICATION_TAG: long mheg_script_classification; case PROPRIETARY_SCRIPT_CLASSIFICATION_TAG: long proprietary_script_classification; }; // Corresponding MHEG datatype: Evaluated-Value //======================================================================== interface EvaluatedValue { enum EvaluatedValueTag { GET_PREPARATION_STATUS_TAG, GET_DATA_TAG, GET_RT_AVAILABILITY_STATUS_TAG, GET_GLOBAL_BEHAVIOUR_TAG, GET_RUNNING_STATUS_TAG, GET_TERMINATION_STATUS_TAG, GET_RGS_TAG, GET_OPACITY_TAG, GET_EFFECTIVE_OPACITY_TAG, GET_PRESENTATION_PRIORITY_TAG, GET_PD_TAG, GET_INITIAL_TEMPORAL_POSITION_TAG, GET_TERMINAL_TEMPORAL_POSITION_TAG, GET_VD_LENGTH_TAG, GET_CURRENT_TEMPORAL_POSITION_TAG, GET_VD_POSITION_TAG, GET_SPEED_RATE_TAG, GET_OGTR_TAG, GET_EFFECTIVE_SPEED_RATE_TAG, GET_EFFECTIVE_OGTR_TAG, GET_TIMESTONE_STATUS_TAG, GET_GSR_TAG, GET_PS_TAG, GET_RESIZING_STRATEGY_TAG, GET_ASPECT_RATIO_TAG, GET_PSAP_TAG, GET_VSGS_TAG, GET_VS_TAG, GET_BOX_TAG, GET_DEFAULT_BACKGROUND_TAG, GET_VSIAP_TAG, GET_VSIAP_POSITION_TAG, GET_VSEAP_TAG, GET_VSEAP_POSITION_TAG, GET_MOVING_ABILITY_TAG, GET_RESIZING_ABILITY_TAG, GET_SCALING_ABILITY_TAG, GET_SCROLLING_ABILITY_TAG, GET_IOV_TAG, GET_CURRENT_OV_TAG, GET_AUDIBLE_COMPOSITION_EFFECT_TAG, GET_EFFECTIVE_OV_TAG, GET_PERCEPTIBLE_OV_TAG, GET_STREAM_CHOSEN_TAG, GET_SELECTABILITY_TAG, GET_EFFECTIVE_SELECTABILITY_TAG, GET_SELECTION_STATUS_TAG, GET_SELECTION_MODE_TAG, GET_NUMBER_SELECTED_SOCKETS_TAG, GET_SELECTION_PRESENTATION_EFFECT_RESPONSIBILITY_TAG, GET_MODIFIABILITY_TAG, GET_EFFECTIVE_MODIFIABILITY_TAG, GET_MODIFICATION_STATUS_TAG, GET_MODIFICATION_MODE_TAG, GET_NUMBER_MODIFIED_SOCKETS_TAG, GET_MODIFICATION_PRESENTATION_EFFECT_RESPONSIBILITY_TAG, GET_CHANNEL_AVAILABILITY_STATUS_TAG, GET_CHANNEL_PERCEPTABILITY_TAG }; union EvaluatedValue switch (EvaluatedValueTag){ case GET_PREPARATION_STATUS_TAG: MhTargetParameter get_preparation_status; case GET_DATA_TAG: GetData get_data; case GET_RT_AVAILABILITY_STATUS_TAG: RtTargetParameter get_rt_availability_status; case GET_GLOBAL_BEHAVIOUR_TAG: RtTargetParameter get_global_behaviour; case GET_RUNNING_STATUS_TAG: RtTargetParameter get_running_status; case GET_TERMINATION_STATUS_TAG: RtTargetParameter get_termination_status; case GET_RGS_TAG: RtSocketTargetParameter get_RGS; case GET_OPACITY_TAG: RtSocketTargetParameter get_opacity; case GET_EFFECTIVE_OPACITY_TAG: RtSocketTargetParameter get_effective_opacity; case GET_PRESENTATION_PRIORITY_TAG: RtSocketTargetParameter get_presentation_priority; case GET_PD_TAG: GetPD get_PD; case GET_INITIAL_TEMPORAL_POSITION_TAG: RtSocketTargetParameter get_initial_temporal_position; case GET_TERMINAL_TEMPORAL_POSITION_TAG: RtSocketTargetParameter get_terminal_temporal_position; case GET_VD_LENGTH_TAG: GetVDLength get_VD_length; case GET_CURRENT_TEMPORAL_POSITION_TAG: RtSocketTargetParameter get_current_temporal_position; case GET_VD_POSITION_TAG: SocketTargetParameter get_VD_position; case GET_SPEED_RATE_TAG: RtSocketTargetParameter get_speed_rate; case GET_OGTR_TAG: RtSocketTargetParameter get_OGTR; case GET_EFFECTIVE_SPEED_RATE_TAG: RtSocketTargetParameter get_effective_speed_rate; case GET_EFFECTIVE_OGTR_TAG: RtSocketTargetParameter get_effective_OGTR; case GET_TIMESTONE_STATUS_TAG: RtSocketTargetParameter get_timestone_status; case GET_GSR_TAG: RtSocketTargetParameter get_GSR; case GET_PS_TAG: PerceptibleSizeParameter get_PS; case GET_RESIZING_STRATEGY_TAG: RtSocketTargetParameter get_resizing_strategy; case GET_ASPECT_RATIO_TAG: RtSocketTargetParameter get_aspect_ratio; case GET_PSAP_TAG: APParameter get_PSAP; case GET_VSGS_TAG: RtSocketTargetParameter get_VSGS; case GET_VS_TAG: RtSocketTargetParameter get_VS; case GET_BOX_TAG: RtSocketTargetParameter get_box; case GET_DEFAULT_BACKGROUND_TAG: RtSocketTargetParameter get_default_background; case GET_VSIAP_TAG: APParameter get_VSIAP; case GET_VSIAP_POSITION_TAG: RtSocketTargetParameter get_VSIAP_position; case GET_VSEAP_TAG: APParameter get_VSEAP; case GET_VSEAP_POSITION_TAG: VSEAPPositionParameter get_VSEAP_position; case GET_MOVING_ABILITY_TAG: RtSocketTargetParameter get_moving_ability; case GET_RESIZING_ABILITY_TAG: RtSocketTargetParameter get_resizing_ability; case GET_SCALING_ABILITY_TAG: RtSocketTargetParameter get_scaling_ability; case GET_SCROLLING_ABILITY_TAG: RtSocketTargetParameter get_scrolling_ability; case GET_IOV_TAG: RtSocketTargetParameter get_IOV; case GET_CURRENT_OV_TAG: RtSocketTargetParameter get_current_OV; case GET_AUDIBLE_COMPOSITION_EFFECT_TAG: RtSocketTargetParameter get_audible_composition_effect; case GET_EFFECTIVE_OV_TAG: RtSocketTargetParameter get_effective_OV; case GET_PERCEPTIBLE_OV_TAG: RtSocketTargetParameter get_perceptible_OV; case GET_STREAM_CHOSEN_TAG: RtSocketTargetParameter get_stream_chosen; case GET_SELECTABILITY_TAG: RtSocketTargetParameter get_selectability; case GET_EFFECTIVE_SELECTABILITY_TAG: RtSocketTargetParameter get_effective_selectability; case GET_SELECTION_STATUS_TAG: RtSocketTargetParameter get_selection_status; case GET_SELECTION_MODE_TAG: RtSocketTargetParameter get_selection_mode; case GET_NUMBER_SELECTED_SOCKETS_TAG: RtSocketTargetParameter get_number_selected_sockets; case GET_SELECTION_PRESENTATION_EFFECT_RESPONSIBILITY_TAG: RtSocketTargetParameter get_selection_presentation_effect_responsibility; case GET_MODIFIABILITY_TAG: RtSocketTargetParameter get_modifiability; case GET_EFFECTIVE_MODIFIABILITY_TAG: RtSocketTargetParameter get_effective_modifiability; case GET_MODIFICATION_STATUS_TAG: RtSocketTargetParameter get_modification_status; case GET_MODIFICATION_MODE_TAG: RtSocketTargetParameter get_modification_mode; case GET_NUMBER_MODIFIED_SOCKETS_TAG: RtSocketTargetParameter get_number_modified_sockets; case GET_MODIFICATION_PRESENTATION_EFFECT_RESPONSIBILITY_TAG: RtSocketTargetParameter get_modification_presentation_effect_responsibility; case GET_CHANNEL_AVAILABILITY_STATUS_TAG: ChannelTargetParameter get_channel_availability_status; case GET_CHANNEL_PERCEPTABILITY_TAG: ChannelTargetParameter get_channel_perceptability; }; attribute EvaluatedValue evaluated_value; }; // Corresponding MHEG datatype: Delay-Targets //======================================================================== enum DelayTargetsTag { PERCEPTIBLE_TARGETS_TAG, NULL_CHANNEL_TAG }; union DelayTargets switch (DelayTargetsTag){ case PERCEPTIBLE_TARGETS_TAG: sequence<RtObjectSocketReference> perceptible_targets; }; // Corresponding MHEG datatype: Delay-Targets-Macro //======================================================================== struct DelayTargetsMacro { MacroDefId macro_def_id; sequence<DelayTargets,1> delay_targets; }; // Corresponding MHEG datatype: Delay-Targets-Parameter //======================================================================== enum DelayTargetsParameterTag { DELAY_TARGETS_TAG, DELAY_TARGETS_MACRO_TAG }; union DelayTargetsParameter switch (DelayTargetsParameterTag){ case DELAY_TARGETS_TAG: DelayTargets delay_targets; case DELAY_TARGETS_MACRO_TAG: DelayTargetsMacro delay_targets_macro; }; // Corresponding MHEG datatype: Delay //======================================================================== struct Delay { sequence<DelayTargetsParameter,1> targets_parameter; NumericParameter duration; }; // Corresponding MHEG datatype: Values //======================================================================== typedef sequence<GenericValue> Values; // Corresponding MHEG datatype: Values-Macro //======================================================================== struct ValuesMacro { MacroDefId macro_def_if; sequence<Values,1> values; }; // Corresponding MHEG datatype: Returned-Values-Parameter //======================================================================== enum ReturnedValuesParameterTag { VALUES_TAG, VALUES_MACRO_TAG }; union ReturnedValuesParameter switch (ReturnedValuesParameterTag){ case VALUES_TAG: Values values; case VALUES_MACRO_TAG: ValuesMacro values_macro; }; // Corresponding MHEG datatype: Return //======================================================================== struct Return { NumericParameter return_indicator_param; sequence<ReturnedValuesParameter,1> returned_values_param; sequence<MhTargetsParameter,1> returned_objects_param; }; // Corresponding MHEG datatype: Set-Alias //======================================================================== struct SetAlias { sequence<TargetsParameter,1> targets_parameter; StringParameter given_alias; }; // Corresponding MHEG datatype: Data-Element //======================================================================== struct DataElement { sequence<ElementListIndexParameter,1> element_list_index_param; sequence<BooleanParameter,1> process_indicator_param; sequence<ValueParameter,1> value_parameter; }; // Corresponding MHEG datatype: Set-Data //======================================================================== struct SetData { sequence<MhTargetsParameter,1> content_targets_param; sequence<BooleanParameter,1> substitution_indicator_param; sequence<sequence<DataElement>,1> data_elements; }; // Corresponding MHEG datatype: Copy //======================================================================== struct Copy { sequence<MhTargetParameter,1> source; MhTargetsParameter copies; }; // Corresponding MHEG datatype: Stream //======================================================================== struct Stream { sequence<long> stream_id; MhTargetParameter content_target; }; // Corresponding MHEG datatype: Set-Multiplex //======================================================================== struct SetMultiplex { sequence<MhTargetsParameter,1> multiplex_targets; sequence<Stream> streams; }; // Corresponding MHEG datatype: Set-Demultiplex //======================================================================== struct SetDemultiplex { sequence<MhTargetParameter,1> multiplex_targets; sequence<Stream> multiplex; }; // Corresponding MHEG datatype: Global-Behaviour //======================================================================== enum GlobalBehaviourTag { GLOBAL_BEHAVIOUR_GET_GLOBAL_BEHAVIOUR_TAG, GLOBAL_BEHAVIOUR_GET_DATA_TAG, GLOBAL_BEHAVIOUR_UNSPECIFIED_TAG }; union GlobalBehaviour switch (GlobalBehaviourTag){ case GLOBAL_BEHAVIOUR_GET_GLOBAL_BEHAVIOUR_TAG: RtTargetParameter get_global_behaviour; case GLOBAL_BEHAVIOUR_GET_DATA_TAG: GetData get_data; }; // Corresponding MHEG datatype: Global-Behaviour-Macro //======================================================================== struct GlobalBehaviourMacro { MacroDefId macro_def_id; sequence<GlobalBehaviour,1> global_behaviour; }; // Corresponding MHEG datatype: Global-Behaviour-Parameter //======================================================================== enum GlobalBehaviourParameterTag { GLOBAL_BEHAVIOUR_TAG, GLOBAL_BEHAVIOUR_MACRO_TAG }; union GlobalBehaviourParameter switch (GlobalBehaviourParameterTag){ case GLOBAL_BEHAVIOUR_TAG: GlobalBehaviour global_behaviour; case GLOBAL_BEHAVIOUR_MACRO_TAG: GlobalBehaviourMacro global_behaviour_macro; }; // Corresponding MHEG datatype: Set-Global-Behaviour //======================================================================== struct SetGlobalBehaviour { sequence<RtSocketTargetsParameter,1> rt_sockets_targets_param; sequence<GlobalBehaviourParameter,1> global_behaviour_param; }; // Corresponding MHEG datatype: Parameter //======================================================================== enum ParameterTag { PARAMETER_GENERIC_VALUE_TAG, PARAMETER_CONTENT_TARGET_TAG }; union Parameter switch (ParameterTag){ case PARAMETER_GENERIC_VALUE_TAG: ValueParameter generic_value; case PARAMETER_CONTENT_TARGET_TAG: MhTargetParameter content_target; }; // Corresponding MHEG datatype: Parameters-Macro //======================================================================== struct ParametersMacro { MacroDefId macro_def_id; sequence<sequence<Parameter>,1> parameters; }; // Corresponding MHEG datatype: Parameters-Parameter //======================================================================== enum ParametersParameterTag { PARAMETERS_TAG, PARAMETERS_MACRO_TAG }; union ParametersParameter switch (ParametersParameterTag){ case PARAMETERS_TAG: sequence<Parameter> parameters; case PARAMETERS_MACRO_TAG: ParametersMacro parameters_macro; }; // Corresponding MHEG datatype: Set-Parameters //======================================================================== struct SetParameters { sequence<RtTargetsParameter,1> rt_script_targets_parameter; ParametersParameter parameters; }; // Corresponding MHEG datatype: Plug-In //======================================================================== enum PlugInTag { RT_COMPONENT_REFERENCE_TAG, COMPONENT_REFERENCE_TAG, LABEL_TAG }; union PlugIn switch (PlugInTag){ case RT_COMPONENT_REFERENCE_TAG: RtObjectReference rt_component_reference; case COMPONENT_REFERENCE_TAG: MhObjectReference component_reference; case LABEL_TAG: GenericString label; }; // Corresponding MHEG datatype: Plug-In-Macro //======================================================================== struct PlugInMacro { MacroDefId macro_def_id; sequence<PlugIn,1> plug_in; }; // Corresponding MHEG datatype: Plug-In-Parameter //======================================================================== enum PlugInParameterTag { PLUG_IN_TAG, PLUG_IN_MACRO_TAG }; union PlugInParameter switch (PlugInParameterTag){ case PLUG_IN_TAG: PlugIn plug_in; case PLUG_IN_MACRO_TAG: PlugInMacro plug_in_macro; }; // Corresponding MHEG datatype: Plug //======================================================================== struct Plug { sequence<SocketTargetsParameter,1> socket_targets_parameter; PlugInParameter plug_in_parameter; }; // Corresponding MHEG datatype: Set-RGS //======================================================================== struct SetRGS { sequence<RtSocketTargetsParameter,1> perceptible_targets_param; sequence<ChannelTargetParameter,1> rgs_parameter; }; // Corresponding MHEG datatype: Set-Opacity //======================================================================== struct SetOpacity { sequence<RtSocketTargetsParameter,1> perceptible_targets_param; sequence<NumericParameter,1> opacity_rate; sequence<NumericParameter,1> transition_duration_param; }; Recommendation T.174 (10/96) // Corresponding MHEG datatype: Presentation-Priority //======================================================================== enum PresentationPriorityTag { PRESENTATION_PRIORITY_GENERIC_NUMERIC_TAG, PRESENTATION_PRIORITY_PRIORITY_LEVEL_TAG }; union PresentationPriority switch (PresentationPriorityTag){ case PRESENTATION_PRIORITY_GENERIC_NUMERIC_TAG: GenericNumeric generic_numeric; case PRESENTATION_PRIORITY_PRIORITY_LEVEL_TAG: PriorityLevel priority_level; }; // Corresponding MHEG datatype: Presentation-Priority-Macro //======================================================================== struct PresentationPriorityMacro { MacroDefId macro_def_id; sequence<PresentationPriority,1> presentation_priority; }; // Corresponding MHEG datatype: Presentation-Priority-Parameter //======================================================================== enum PresentationPriorityParameterTag { PRESENTATION_PRIORITY_TAG, PRESENTATION_PRIORITY_MACRO_TAG }; union PresentationPriorityParameter switch (PresentationPriorityParameterTag){ case PRESENTATION_PRIORITY_TAG: PresentationPriority presentation_priority; case PRESENTATION_PRIORITY_MACRO_TAG: PresentationPriorityMacro presentation_priority_macro; }; // Corresponding MHEG datatype: Set-Presentation-Priority //======================================================================== struct SetPresentationPriority { sequence<RtSocketTargetsParameter,1> perceptible_targets_param; sequence<PresentationPriorityParameter,1> presentation_priority_param; sequence<NumericParameter,1> transition_duration_param; }; // Corresponding MHEG datatype: Temporal-Position-Macro //======================================================================== struct TemporalPositionMacro { MacroDefId macro_def_id; sequence<TemporalPosition,1> temporal_position; }; // Corresponding MHEG datatype: Temporal-Position-Parameter //======================================================================== enum TemporalPositionParameterTag { TEMPORAL_POSITION_TAG, TEMPORAL_POSITION_MACRO_TAG }; union TemporalPositionParameter switch (TemporalPositionParameterTag){ case TEMPORAL_POSITION_TAG: TemporalPosition temporal_position; case TEMPORAL_POSITION_MACRO_TAG: TemporalPositionMacro temporal_position_macro; }; // Corresponding MHEG datatype: Set-Visible-Duration //======================================================================== struct SetVisibleDuration { sequence<RtSocketTargetsParameter,1> perceptible_targets_parameter; sequence<TemporalPositionParameter,1> initial_temporal_position_parameter; sequence<TemporalPositionParameter,1> terminal_temporal_position_parameter; }; // Corresponding MHEG datatype: Temporal-Termination-Macro //======================================================================== struct TemporalTerminationMacro { MacroDefId macro_def_id; sequence<TemporalTermination,1> temporal_termination; }; // Corresponding MHEG datatype: Temporal-Termination-Parameter //======================================================================== enum TemporalTerminationParameterTag { TEMPORAL_TERMINATION_PARAMETER_TEMPORAL_TERMINATION_TAG, TEMPORAL_TERMINATION_PARAMETER_TEMPORAL_TERMINATION_MACRO_TAG }; union TemporalTerminationParameter switch (TemporalTerminationParameterTag){ case TEMPORAL_TERMINATION_PARAMETER_TEMPORAL_TERMINATION_TAG: TemporalTermination temporal_termination; case TEMPORAL_TERMINATION_PARAMETER_TEMPORAL_TERMINATION_MACRO_TAG: TemporalTerminationMacro temporal_termination_macro; }; // Corresponding MHEG datatype: Set-Temporal-Termination //======================================================================== struct SetTemporalTermination { sequence<RtSocketTargetsParameter,1> perceptible_targets_parameter; TemporalTerminationParameter temporal_termination_parameter; }; // Corresponding MHEG datatype: Current-Temporal-Position-Macro //======================================================================== struct CurrentTemporalPositionMacro { MacroDefId macro_def_id; sequence<CurrentTemporalPosition,1> current_temporal_termination; }; // Corresponding MHEG datatype: Current-Temporal-Position-Parameter //======================================================================== enum CurrentTemporalPositionParameterTag { CURRENT_TEMPORAL_POSITION_TAG, CURRENT_TEMPORAL_POSITION_MACRO_TAG }; union CurrentTemporalPositionParameter switch (CurrentTemporalPositionParameterTag){ case CURRENT_TEMPORAL_POSITION_TAG: CurrentTemporalPosition current_temporal_position; case CURRENT_TEMPORAL_POSITION_MACRO_TAG: CurrentTemporalPositionMacro current_temporal_position_macro; }; // Corresponding MHEG datatype: Set-Current-Temporal-Position //======================================================================== struct SetCurrentTemporalPosition { sequence<RtSocketTargetsParameter,1> perceptible_targets_parameter; sequence<CurrentTemporalPositionParameter,1> temporal_position_parameter; }; // Corresponding MHEG datatype: Visible-Duration-Macro //======================================================================== struct VisibleDurationPositionMacro { MacroDefId macro_def_id; sequence<VisibleDurationPosition,1> visible_duration_position; }; // Corresponding MHEG datatype: Visible-Duration-Parameter //======================================================================== enum VisibleDurationPositionParameterTag { VISIBLE_DURATION_POSITION_TAG, VISIBLE_DURATION_POSITION_MACRO_TAG }; union VisibleDurationPositionParameter switch (VisibleDurationPositionParameterTag){ case VISIBLE_DURATION_POSITION_TAG: VisibleDurationPosition visible_duration_position; case VISIBLE_DURATION_POSITION_MACRO_TAG: VisibleDurationPositionMacro visible_duration_position_macro; }; // Corresponding MHEG datatype: Set-Visible-Duration-Position //======================================================================== struct SetVisibleDurationPosition { sequence<SocketTargetsParameter,1> socket_targets; sequence<VisibleDurationPositionParameter,1> visible_duration_position_param; }; // Corresponding MHEG datatype: Speed-Macro //======================================================================== struct SpeedMacro { MacroDefId macro_def_id; sequence<Speed,1> speed; }; // Corresponding MHEG datatype: Speed-Parameter //======================================================================== enum SpeedParameterTag { SPEED_TAG, SPEED_MACRO_TAG }; union SpeedParameter switch (SpeedParameterTag){ case SPEED_TAG: Speed speed; case SPEED_MACRO_TAG: SpeedMacro speed_macro; }; // Corresponding MHEG datatype: Set-Speed //======================================================================== struct SetSpeed { RtSocketTargetsParameter perceptible_targets_parameter; sequence<SpeedParameter,1> speed_parameter; sequence<NumericParameter,1> transition_duration_parameter; }; // Corresponding MHEG datatype: Timestone-Macro //======================================================================== struct TimestoneMacro { MacroDefId macro_def_id; sequence<Timestone,1> timestone; }; // Corresponding MHEG datatype: Timestone-Parameter //======================================================================== enum TimestoneParameterTag { TIMESTONE_TAG, TIMESTONE_MACRO_TAG }; union TimestoneParameter switch (TimestoneParameterTag){ case TIMESTONE_TAG: Timestone timestone; case TIMESTONE_MACRO_TAG: TimestoneMacro timestone_macro; }; // Corresponding MHEG datatype: Set-Timestones //======================================================================== struct SetTimestones { sequence<RtSocketTargetsParameter,1> perceptible_targets_parameter; sequence<sequence<TimestoneParameter>,1> timestones_parameter; }; // Corresponding MHEG datatype: Perceptible-Size-Projection-Macro //======================================================================== struct PerceptibleSizeProjectionMacro { MacroDefId macro_def_id; sequence<PerceptibleSizeProjection,1> perceptible_size_projection; }; // Corresponding MHEG datatype: Perceptible-Size-Projection-Parameter //======================================================================== enum PerceptibleSizeProjectionParameterTag { PERCEPTIBLE_SIZE_PROJECTION_TAG, PERCEPTIBLE_SIZE_PROJECTION_MACRO_TAG }; union PerceptibleSizeProjectionParameter switch (PerceptibleSizeProjectionParameterTag){ case PERCEPTIBLE_SIZE_PROJECTION_TAG: PerceptibleSizeProjection perceptible_size_projection; case PERCEPTIBLE_SIZE_PROJECTION_MACRO_TAG: PerceptibleSizeProjectionMacro perceptible_size_projection_macro; }; // Corresponding MHEG datatype: Set-Perceptible-Size-Projection //======================================================================== struct SetPerceptibleSizeProjection { sequence<RtSocketTargetsParameter,1> perceptible_targets_parameter; PerceptibleSizeProjectionParameter perceptible_size_projection; sequence<NumericParameter,1> transition_duration_parameter; }; // Corresponding MHEG datatype: Resizing-Strategy-Macro //======================================================================== struct ResizingStrategyMacro { MacroDefId macro_def_id; sequence<ResizingStrategy,1> resizing_strategy; }; // Corresponding MHEG datatype: Resizing-Strategy-Parameter //======================================================================== enum ResizingStrategyParameterTag { RESIZING_STRATEGY_PARAMETER_RESIZING_STRATEGY_TAG, RESIZING_STRATEGY_PARAMETER_RESIZING_STRATEGY_MACRO_TAG }; union ResizingStrategyParameter switch (ResizingStrategyParameterTag){ case RESIZING_STRATEGY_PARAMETER_RESIZING_STRATEGY_TAG: ResizingStrategy resizing_strategy; case RESIZING_STRATEGY_PARAMETER_RESIZING_STRATEGY_MACRO_TAG: ResizingStrategyMacro resizing_strategy_macro; }; // Corresponding MHEG datatype: Set-Resizing-Strategy //======================================================================== struct SetResizingStrategy { sequence<RtSocketTargetsParameter,1> perceptible_targets_parameter; sequence<ResizingStrategyParameter,1> resizing_strategy_parameter; }; // Corresponding MHEG datatype: Set-Aspect-Ratio-Preserved //======================================================================== struct SetAspectRatioPreserved { sequence<RtSocketTargetsParameter,1> perceptible_targets_parameter; BooleanParameter preserved; }; // Corresponding MHEG datatype: VSGS-Macro //======================================================================== struct VSGSMacro { MacroDefId macro_def_id; sequence<VSGS,1> vsgs; }; // Corresponding MHEG datatype: VSGS-Parameter //======================================================================== enum VSGSParameterTag { VSGS_PARAMETER_VSGS_TAG, VSGS_PARAMETER_VSGS_MACRO_TAG }; union VSGSParameter switch (VSGSParameterTag){ case VSGS_PARAMETER_VSGS_TAG: VSGS vsgs; case VSGS_PARAMETER_VSGS_MACRO_TAG: VSGSMacro vsgs_macro; }; // Corresponding MHEG datatype: Size-Attribute-Macro //======================================================================== struct SizeAttributeMacro { MacroDefId macro_def_id; sequence<SizeAttribute,1> size_attribute; }; // Corresponding MHEG datatype: Size-Attribute-Parameter //======================================================================== enum SizeAttributeParameterTag { SIZE_ATTRIBUTE_TAG, SIZE_ATTRIBUTE_MACRO_TAG }; union SizeAttributeParameter switch (SizeAttributeParameterTag){ case SIZE_ATTRIBUTE_TAG: SizeAttribute size_attribute; case SIZE_ATTRIBUTE_MACRO_TAG: SizeAttributeMacro size_attribute_macro; }; // Corresponding MHEG datatype: VS-Parameter //======================================================================== enum VSParameterTag { X_SIZE_ATTRIBUTE_PARAMETER_TAG, Y_SIZE_ATTRIBUTE_PARAMETER_TAG, Z_SIZE_ATTRIBUTE_PARAMETER_TAG }; union VSParameter switch (VSParameterTag){ case X_SIZE_ATTRIBUTE_PARAMETER_TAG: SizeAttributeParameter x_size_attribute_parameter; case Y_SIZE_ATTRIBUTE_PARAMETER_TAG: SizeAttributeParameter y_size_attribute_parameter; case Z_SIZE_ATTRIBUTE_PARAMETER_TAG: SizeAttributeParameter z_size_attribute_parameter; }; // Corresponding MHEG datatype: Set-Visible-Size //======================================================================== struct SetVisibleSize { sequence<RtSocketTargetsParameter,1> perceptible_targets_parameter; VSGSParameter vsgs_parameter; VSParameter vs_parameter; sequence<NumericParameter,1> transition_duration_parameter; }; // Corresponding MHEG datatype: Adjustment-Axis-Macro //======================================================================== struct AdjustmentAxisMacro { MacroDefId macro_def_id; sequence<AdjustmentAxis,1> adjustment_axis; }; // Corresponding MHEG datatype: Adjustment-Axis-Parameter //======================================================================== enum AdjustmentAxisParameterTag { ADJUSTMENT_AXIS_TAG, ADJUSTMENT_AXIS_MACRO_TAG }; union AdjustmentAxisParameter switch (AdjustmentAxisParameterTag){ case ADJUSTMENT_AXIS_TAG: AdjustmentAxis adjustment_axis; case ADJUSTMENT_AXIS_MACRO_TAG: AdjustmentAxisMacro adjustment_axis_macro; }; // Corresponding MHEG datatype: Adjustment-Policy-Macro //======================================================================== struct AdjustmentPolicyMacro { MacroDefId macro_def_id; sequence<AdjustmentPolicy,1> adjustment_policy; }; // Corresponding MHEG datatype: Adjustment-Policy-Parameter //======================================================================== enum AdjustmentPolicyParameterTag { ADJUSTMENT_POLICY_TAG, ADJUSTMENT_POLICY_MACRO_TAG }; union AdjustmentPolicyParameter switch (AdjustmentPolicyParameterTag){ case ADJUSTMENT_POLICY_TAG: AdjustmentPolicy adjustment_policy; case ADJUSTMENT_POLICY_MACRO_TAG: AdjustmentPolicyMacro adjustment_policy_macro; }; // Corresponding MHEG datatype: Set-Visible-Sizes-Adjustment //======================================================================== struct SetVisibleSizesAdjustment { sequence<AdjustmentAxisParameter> adjustment_axis_set; AdjustmentPolicyParameter adjustment_policy; sequence<NumericParameter,1> transition_duration_parameter; }; // Corresponding MHEG datatype: Set-Box //======================================================================== struct SetBox { sequence<RtSocketTargetsParameter,1> perceptible_targets_parameter; sequence<BooleanParameter,1> box_parameter; }; // Corresponding MHEG datatype: Set-Default-Background //======================================================================== struct SetDefaultBackground { sequence<RtSocketTargetsParameter,1> perceptible_targets_parameter; sequence<NumericParameter,1> background_parameter; sequence<NumericParameter,1> transition_duration; }; // Corresponding MHEG datatype: Attachment-Point-Type-Macro //======================================================================== struct AttachmentPointTypeMacro { MacroDefId macro_def_id; sequence<AttachmentPointType,1> attachment_point_type; }; // Corresponding MHEG datatype: Attachment-Point-Type-Parameter //======================================================================== enum AttachmentPointTypeParameterTag { ATTACHMENT_POINT_TYPE_TAG, ATTACHMENT_POINT_TYPE_MACRO_TAG }; union AttachmentPointTypeParameter switch (AttachmentPointTypeParameterTag){ case ATTACHMENT_POINT_TYPE_TAG: AttachmentPointType attachment_point_type; case ATTACHMENT_POINT_TYPE_MACRO_TAG: AttachmentPointTypeMacro attachment_point_type_macro; }; // Corresponding MHEG datatype: Attachment-Attribute-Macro //======================================================================== struct AttachmentAttributeMacro { MacroDefId macro_def_id; sequence<AttachmentAttribute,1> attachment_attribute; }; // Corresponding MHEG datatype: Attachment-Attribute-Parameter //======================================================================== enum AttachmentAttributeParameterTag { ATTACHMENT_ATTRIBUTE_TAG, ATTACHMENT_ATTRIBUTE_MACRO_TAG }; union AttachmentAttributeParameter switch (AttachmentAttributeParameterTag){ case ATTACHMENT_ATTRIBUTE_TAG: AttachmentAttribute attachment_attribute; case ATTACHMENT_ATTRIBUTE_MACRO_TAG: AttachmentAttributeMacro attachment_attribute_macro; }; // Corresponding MHEG datatype: Attachment-Point-Parameter //======================================================================== struct AttachmentPointParameter { sequence<AttachmentAttributeParameter,1> x_attachment_parameter; sequence<AttachmentAttributeParameter,1> y_attachment_parameter; sequence<AttachmentAttributeParameter,1> z_attachment_parameter; }; // Corresponding MHEG datatype: Set-Attachment-Point //======================================================================== struct SetAttachmentPoint { sequence<RtSocketTargetsParameter,1> perceptible_targets_parameter; sequence<AttachmentPointTypeParameter,1> attachment_point_type_param; sequence<AttachmentPointParameter,1> attachment_point_param; }; // Corresponding MHEG datatype: Reference-Type-Macro //======================================================================== struct ReferenceTypeMacro { MacroDefId macro_def_id; sequence<ReferenceType,1> reference_type; }; // Corresponding MHEG datatype: Reference-Type-Parameter //======================================================================== enum ReferenceTypeParameterTag { REFERENCE_TYPE_TAG, REFERENCE_TYPE_MACRO_TAG }; union ReferenceTypeParameter switch (ReferenceTypeParameterTag){ case REFERENCE_TYPE_TAG: ReferenceType reference_type; case REFERENCE_TYPE_MACRO_TAG: ReferenceTypeMacro reference_type_macro; }; // Corresponding MHEG datatype: VSEAP-Reference-Point //======================================================================== enum VSEAPReferencePointTag { ORIGIN_TAG, COMPONENT_TAG }; union VSEAPReferencePoint switch (VSEAPReferencePointTag){ case COMPONENT_TAG: SocketTargetParameter component; }; // Corresponding MHEG datatype: VSEAP-Reference-Point-Macro //======================================================================== struct VSEAPReferencePointMacro { MacroDefId macro_def_id; sequence<VSEAPReferencePoint,1> vseap_reference; }; // Corresponding MHEG datatype: VSEAP-Reference-Parameter //======================================================================== enum VSEAPReferenceParameterTag { VSEAP_REFERENCE_TAG, VSEAP_REFERENCE_MACRO_TAG }; union VSEAPReferenceParameter switch (VSEAPReferenceParameterTag){ case VSEAP_REFERENCE_TAG: VSEAPReferencePoint vseap_reference; case VSEAP_REFERENCE_MACRO_TAG: VSEAPReferencePointMacro vseap_reference_macro; }; // Corresponding MHEG datatype: Length-Attribute-Macro //======================================================================== struct LengthAttributeMacro { MacroDefId macro_def_id; sequence<LengthAttribute,1> length_attribute; }; // Corresponding MHEG datatype: Length-Attribute-Parameter //======================================================================== enum LengthAttributeParameterTag { LENGTH_ATTRIBUTE_TAG, LENGTH_ATTRIBUTE_MACRO_TAG }; union LengthAttributeParameter switch (LengthAttributeParameterTag){ case LENGTH_ATTRIBUTE_TAG: LengthAttribute length_attribute; case LENGTH_ATTRIBUTE_MACRO_TAG: LengthAttributeMacro length_attribute_macro; }; // Corresponding MHEG datatype: Lengths-Parameter //======================================================================== struct LengthsParameter { sequence<LengthAttributeParameter,1> x_length_parameter; sequence<LengthAttributeParameter,1> y_position_parameter; sequence<LengthAttributeParameter,1> z_position_parameter; }; // Corresponding MHEG datatype: Set-Attachment-Point-Position //======================================================================== struct SetAttachmentPointPosition { sequence<RtSocketTargetsParameter,1> perceptible_targets_parameter; sequence<ReferenceTypeParameter,1> attachment_type_parameter; sequence<VSEAPReferenceParameter,1> vseap_reference_parameter; sequence<LengthsParameter,1> positions_parameter; sequence<NumericParameter,1> transition_duration_parameter; }; // Corresponding MHEG datatype: Size-Border-Macro //======================================================================== struct SizeBorderMacro { MacroDefId macro_def_id; sequence<SizeBorder,1> size_border; }; // Corresponding MHEG datatype: Size-Border-Parameter //======================================================================== enum SizeBorderParameterTag { SIZE_BORDER_TAG, SIZE_BORDER_MACRO_TAG }; union SizeBorderParameter switch (SizeBorderParameterTag){ case SIZE_BORDER_TAG: SizeBorder size_border; case SIZE_BORDER_MACRO_TAG: SizeBorderMacro size_border_macro; }; // Corresponding MHEG datatype: Set-Visible-Sizes-Alignment //======================================================================== struct SetVisibleSizesAlignment { sequence<RtSocketTargetsParameter,1> perceptible_targets_parameter; sequence<SizeBorderParameter,1> size_border_parameter; sequence<NumericParameter,1> margin_parameter; sequence<NumericParameter,1> transition_duration; }; // Corresponding MHEG datatype: User-Controls-Macro //======================================================================== struct UserControlsMacro { MacroDefId macro_def_id; sequence<UserControls,1> user_controls; }; // Corresponding MHEG datatype: User-Controls-Parameter //======================================================================== enum UserControlsParameterTag { USER_CONTROLS_PARAMETER_USER_CONTROLS_TAG, USER_CONTROLS_PARAMETER_USER_CONTROLS_MACRO_TAG }; union UserControlsParameter switch (UserControlsParameterTag){ case USER_CONTROLS_PARAMETER_USER_CONTROLS_TAG: UserControls user_controls; case USER_CONTROLS_PARAMETER_USER_CONTROLS_MACRO_TAG: UserControlsMacro user_controls_macro; }; // Corresponding MHEG datatype: Set-Moving-Ability //======================================================================== struct SetMovingAbility { sequence<RtSocketTargetsParameter,1> perceptible_targets_parameter; sequence<UserControlsParameter,1> allowed; }; // Corresponding MHEG datatype: Set-Resizing-Ability //======================================================================== struct SetResizingAbility { sequence<RtSocketTargetsParameter,1> perceptible_targets_parameter; sequence<UserControlsParameter,1> allowed; }; // Corresponding MHEG datatype: Set-Scaling-Ability //======================================================================== struct SetScalingAbility { sequence<RtSocketTargetsParameter,1> perceptible_targets_parameter; sequence<UserControlsParameter,1> allowed; }; // Corresponding MHEG datatype: Set-Scrolling-Ability //======================================================================== struct SetScrollingAbility { sequence<RtSocketTargetsParameter,1> perceptible_targets_parameter; sequence<UserControlsParameter,1> allowed; }; // Corresponding MHEG datatype: Audible-Volume-Macro //======================================================================== struct AudibleVolumeMacro { MacroDefId macro_def_id; sequence<AudibleVolume,1> audible_volume; }; // Corresponding MHEG datatype: Audible-Volume-Parameter //======================================================================== enum AudibleVolumeParameterTag { AUDIBLE_VOLUME_TAG, AUDIBLE_VOLUME_MACRO_TAG }; union AudibleVolumeParameter switch (AudibleVolumeParameterTag){ case AUDIBLE_VOLUME_TAG: AudibleVolume audible_volume; case AUDIBLE_VOLUME_MACRO_TAG: AudibleVolumeMacro audible_volume_macro; }; // Corresponding MHEG datatype: Set-Audible-Volume //======================================================================== struct SetAudibleVolume { sequence<RtSocketTargetsParameter,1> perceptible_targets_parameter; sequence<AudibleVolumeParameter,1> audible_volume_parameter; sequence<NumericParameter,1> transition_duration_parameter; }; // Corresponding MHEG datatype: Set-Audible-Composition-Effect //======================================================================== struct SetAudibleCompositionEffect { sequence<RtSocketTargetsParameter,1> perceptible_targets_parameter; sequence<NumericParameter,1> audible_effect_parameter; sequence<NumericParameter,1> transition_duration_parameter; }; // Corresponding MHEG datatype: Stream-Identifier-Macro //======================================================================== struct StreamIdentifierMacro { MacroDefId macro_def_id; sequence<StreamIdentifier,1> stream_identifier; }; // Corresponding MHEG datatype: Stream-Identifier-Parameter //======================================================================== enum StreamIdentifierParameterTag { STREAM_IDENTIFIER_TAG, STREAM_IDENTIFIER_MACRO_TAG }; union StreamIdentifierParameter switch (StreamIdentifierParameterTag){ case STREAM_IDENTIFIER_TAG: StreamIdentifier stream_identifier; case STREAM_IDENTIFIER_MACRO_TAG: StreamIdentifierMacro stream_identifier_macro; }; // Corresponding MHEG datatype: Set-Stream-Choice //======================================================================== struct SetStreamChoice { RtSocketTargetsParameter rt_multiplexed_content_socket_param; sequence<StreamIdentifierParameter,1> stream_identifier_parameter; }; // Corresponding MHEG datatype: Set-Selectability //======================================================================== struct SetSelectability { sequence<RtSocketTargetsParameter,1> perceptible_targets_parameter; sequence<NumericParameter,1> min_number_selections; sequence<NumericParameter,1> max_number_selections; }; // Corresponding MHEG datatype: Selection-State-Macro //======================================================================== struct SelectionStateMacro { MacroDefId macro_def_id; sequence<SelectionStatusValue,1> modification_state; }; // Corresponding MHEG datatype: Selection-State-Parameter //======================================================================== enum SelectionStateParameterTag { SELECTION_STATE_MACRO_TAG, SELECTION_STATE_TAG }; union SelectionStateParameter switch (SelectionStateParameterTag){ case SELECTION_STATE_MACRO_TAG: SelectionStateMacro selection_state_macro; case SELECTION_STATE_TAG: SelectionStatusValue selection_state; }; // Corresponding MHEG datatype: Set-Selection-Status //======================================================================== struct SetSelectionStatus { sequence<RtSocketTargetsParameter,1> perceptible_targets_parameter; sequence<SelectionStateParameter,1> selection_state_parameter; }; // Corresponding MHEG datatype: Responsibility-Macro //======================================================================== struct ResponsibilityMacro { MacroDefId macro_def_id; sequence<Responsibility,1> responsibility; }; // Corresponding MHEG datatype: Responsibility-Parameter //======================================================================== enum ResponsibilityParameterTag { RESPONSIBILITY_PARAMETER_RESPONSIBILITY_TAG, RESPONSIBILITY_PARAMETER_RESPONSIBILITY_MACRO_TAG }; union ResponsibilityParameter switch (ResponsibilityParameterTag){ case RESPONSIBILITY_PARAMETER_RESPONSIBILITY_TAG: Responsibility responsibility; case RESPONSIBILITY_PARAMETER_RESPONSIBILITY_MACRO_TAG: ResponsibilityMacro responsibility_macro; }; // Corresponding MHEG datatype: Set-Selection-Presentation-Effect-Responsibility //======================================================================== struct SetSelectionPresentationEffectResponsibility { sequence<RtSocketTargetsParameter,1> perceptible_targets_parameter; sequence<ResponsibilityParameter,1> selection_responsibility; }; // Corresponding MHEG datatype: Set-Modifiability //======================================================================== struct SetModifiability { sequence<RtSocketTargetsParameter,1> perceptible_targets_parameter; sequence<NumericParameter,1> min_number_modifications; sequence<NumericParameter,1> max_number_modifications; }; // Corresponding MHEG datatype: Modification-State-Macro //======================================================================== struct ModificationStateMacro { MacroDefId macro_def_id; sequence<ModificationStatusValue,1> modification_state; }; // Corresponding MHEG datatype: Modification-State-Parameter //======================================================================== enum ModificationStateParameterTag { MODIFICATION_STATE_MACRO_TAG, MODIFICATION_STATE_TAG }; union ModificationStateParameter switch (ModificationStateParameterTag){ case MODIFICATION_STATE_MACRO_TAG: ModificationStateMacro modification_state_macro; case MODIFICATION_STATE_TAG: ModificationStatusValue modification_state; }; // Corresponding MHEG datatype: Set-Modification-Status //======================================================================== struct SetModificationStatus { sequence<RtSocketTargetsParameter,1> perceptible_targets_parameter; sequence<ModificationStateParameter,1> modification_state_parameter; }; // Corresponding MHEG datatype: Set-Modification-Presentation-Effect- // Responsibility //======================================================================== struct SetModificationPresentationEffectResponsibility { sequence<RtSocketTargetsParameter,1> perceptible_targets_parameter; sequence<ResponsibilityParameter,1> modification_responsibility; }; // Corresponding MHEG datatype: Presentation-State-Macro //======================================================================== struct PresentationStateMacro { MacroDefId macro_def_id; sequence<PresentationState,1> presentation_state; }; // Corresponding MHEG datatype: Presentation-State-Parameter //======================================================================== enum PresentationStateParameterTag { PRESENTATION_STATE_MACRO_TAG, PRESENTATION_STATE_TAG }; union PresentationStateParameter switch (PresentationStateParameterTag){ case PRESENTATION_STATE_MACRO_TAG: PresentationStateMacro presentation_state_macro; case PRESENTATION_STATE_TAG: PresentationState presentation_state; }; // Corresponding MHEG datatype: Alternate-Presentation-State-Macro //======================================================================== struct AlternatePresentationMacro { MacroDefId macro_def_id; sequence<AlternatePresentation,1> alternate_presentation_state; }; // Corresponding MHEG datatype: Alternate-Presentation-State-Parameter //======================================================================== enum AlternatePresentationParameterTag { ALTERNATE_PRESENTATION_MACRO_TAG, ALTERNATE_PRESENTATION_TAG }; union AlternatePresentationParameter switch (AlternatePresentationParameterTag){ case ALTERNATE_PRESENTATION_MACRO_TAG: AlternatePresentationMacro alternate_presentation_macro; case ALTERNATE_PRESENTATION_TAG: AlternatePresentation alternate_presentation; }; // Corresponding MHEG datatype: Set-Button-Style //======================================================================== struct SetButtonStyle { sequence<RtSocketTargetsParameter,1> targets; sequence<PresentationStateParameter,1> initial_state; sequence<AlternatePresentationParameter,1> alternate_presentation1; sequence<AlternatePresentationParameter,1> alternate_presentation2; sequence<AlternatePresentationParameter,1> alternate_presentation3; }; // Corresponding MHEG datatype: Orientation-Macro //======================================================================== struct OrientationMacro { MacroDefId macro_def_id; sequence<Orientation,1> orientation; }; // Corresponding MHEG datatype: Orientation-Parameter //======================================================================== enum OrientationParameterTag { ORIENTATION_TAG, ORIENTATION_MACRO_TAG }; union OrientationParameter switch (OrientationParameterTag){ case ORIENTATION_TAG: Orientation orientation; case ORIENTATION_MACRO_TAG: OrientationMacro orientation_macro; }; // Corresponding MHEG datatype: Set-Slider-Style //======================================================================== struct SetSliderStyle { sequence<RtSocketTargetsParameter,1> targets; sequence<RtSocketTargetParameter,1> cursor; sequence<RtSocketTargetParameter,1> background; sequence<OrientationParameter,1> orientation; sequence<NumericParameter,1> min_value; NumericParameter max_value; }; // Corresponding MHEG datatype: Echo-Style-Macro //======================================================================== struct EchoStyleMacro { MacroDefId macro_def_id; sequence<EchoStyle,1> echo_style; }; // Corresponding MHEG datatype: Echo-Style-Parameter //======================================================================== enum EchoStyleParameterTag { ECHO_STYLE_MACRO_TAG, ECHO_STYLE_TAG }; union EchoStyleParameter switch (EchoStyleParameterTag){ case ECHO_STYLE_MACRO_TAG: EchoStyleMacro echo_style_macro; case ECHO_STYLE_TAG: EchoStyle echo_style; }; // Corresponding MHEG datatype: Set-Entry-Field-Style //======================================================================== struct SetEntryFieldStyle { sequence<RtSocketTargetsParameter,1> targets; sequence<EchoStyleParameter,1> echo; sequence<RtSocketTargetParameter,1> background; }; // Corresponding MHEG datatype: Association-Macro //======================================================================== struct AssociationMacro { MacroDefId macro_def_id; sequence<Association,1> association; }; // Corresponding MHEG datatype: Association-Parameter //======================================================================== enum AssociationParameterTag { ASSOCIATION_TAG, ASSOCIATION_MACRO_TAG }; union AssociationParameter switch (AssociationParameterTag){ case ASSOCIATION_TAG: Association association; case ASSOCIATION_MACRO_TAG: AssociationMacro association_macro; }; // Corresponding MHEG datatype: Set-Menu-Style //======================================================================== struct SetMenuStyle { sequence<RtSocketTargetsParameter,1> targets; sequence<OrientationParameter,1> upper_menu_orientation; sequence<AssociationParameter> associations; }; // Corresponding MHEG datatype: Socket-Tail-Macro //======================================================================== struct SocketTailMacro { MacroDefId macro_def_id; sequence<SocketTail,1> socket_tail; }; // Corresponding MHEG datatype: Socket-Tail-Parameter //======================================================================== enum SocketTailParameterTag { SOCKET_TAIL_TAG, SOCKET_TAIL_MACRO_TAG }; union SocketTailParameter switch (SocketTailParameterTag){ case SOCKET_TAIL_TAG: SocketTail socket_tail; case SOCKET_TAIL_MACRO_TAG: SocketTailMacro socket_tail_macro; }; // Corresponding MHEG datatype: Separator-Macro //======================================================================== struct SeparatorMacro { MacroDefId macro_def_id; sequence<Separator,1> separator; }; // Corresponding MHEG datatype: Separator-Parameter //======================================================================== enum SeparatorParameterTag { SEPARATOR_MACRO_TAG, SEPARATOR_TAG }; union SeparatorParameter switch (SeparatorParameterTag){ case SEPARATOR_MACRO_TAG: SeparatorMacro separator_macro; case SEPARATOR_TAG: Separator separator; }; // Corresponding MHEG datatype: Slider-Side-Macro //======================================================================== struct SliderSideMacro { MacroDefId macro_def_id; sequence<SliderSide,1> slider_side; }; // Corresponding MHEG datatype: Slider-Side-Parameter //======================================================================== enum SliderSideParameterTag { SLIDER_SIDE_TAG, SLIDER_SIDE_MACRO_TAG }; union SliderSideParameter switch (SliderSideParameterTag){ case SLIDER_SIDE_TAG: SliderSide slider_side; case SLIDER_SIDE_MACRO_TAG: SliderSideMacro slider_side_macro; }; // Corresponding MHEG datatype: Set-Slider-Style-Macro //======================================================================== struct SetSliderStyleMacro { MacroDefId macro_def_id; sequence<SetSliderStyle,1> set_slider_style; }; // Corresponding MHEG datatype: Set-Slider-Style-Parameter //======================================================================== enum SetSliderStyleParameterTag { SET_SLIDER_STYLE_MACRO_TAG, SET_SLIDER_STYLE_ACTION_TAG }; union SetSliderStyleParameter switch (SetSliderStyleParameterTag){ case SET_SLIDER_STYLE_MACRO_TAG: SetSliderStyleMacro set_slider_style_macro; case SET_SLIDER_STYLE_ACTION_TAG: SetSliderStyle set_slider_style_action; }; // Corresponding MHEG datatype: Set-Scrolling-List-Style //======================================================================== struct SetScrollingListStyle { sequence<RtSocketTargetsParameter,1> targets; sequence<RtSocketTargetParameter,1> background; sequence<NumericParameter,1> visible_items_number; sequence<SocketTailParameter,1> first_item; sequence<SeparatorParameter,1> separator; sequence<OrientationParameter,1> orientation; sequence<SliderSideParameter,1> slider_side; sequence<SetSliderStyleParameter,1> set_slider_style_action; }; // Corresponding MHEG datatype: Original-Def-Declaration-Macro //======================================================================== struct OriginalDefDeclarationMacro { MacroDefId macro_def_id; sequence<OriginalDefDeclaration,1> original_definition; }; // Corresponding MHEG datatype: Original-Def-Declaration-Parameter //======================================================================== enum OriginalDefDeclarationParameterTag { ORIGINAL_DEFINITION_TAG, ORIGINAL_DEFINITION_MACRO_TAG }; union OriginalDefDeclarationParameter switch (OriginalDefDeclarationParameterTag){ case ORIGINAL_DEFINITION_TAG: OriginalDefDeclaration original_definition; case ORIGINAL_DEFINITION_MACRO_TAG: OriginalDefDeclarationMacro original_definition_macro; }; // Corresponding MHEG datatype: New-Channel //======================================================================== struct NewChannel { sequence<ChannelTargetsParameter,1> channel_targets_parameter; sequence<OriginalDefDeclarationParameter,1> original_definition; }; // Corresponding MHEG datatype: Channel-Perceptability-Values-Macro //======================================================================== struct ChannelPerceptabilityValueMacro { MacroDefId macro_def_id; sequence<ChannelPerceptabilityValue,1> channel_perceptability_value; }; // Corresponding MHEG datatype: Perceptability-Parameter //======================================================================== enum PerceptabilityParameterTag { CHANNEL_PERCEPTABILITY_VALUE_TAG, CHANNEL_PERCEPTABILITY_VALUE_MACRO_TAG }; union PerceptabilityParameter switch (PerceptabilityParameterTag){ case CHANNEL_PERCEPTABILITY_VALUE_TAG: ChannelPerceptabilityValue channel_perceptability_value; case CHANNEL_PERCEPTABILITY_VALUE_MACRO_TAG: ChannelPerceptabilityValueMacro channel_perceptability_value_macro; }; // Corresponding MHEG datatype: Set-Channel-Perceptability //======================================================================== struct SetChannelPerceptability { sequence<ChannelTargetsParameter,1> channel_targets_parameter; sequence<PerceptabilityParameter,1> perceptability_parameter; }; // Corresponding MHEG datatype: Elementary-Action //======================================================================== enum ElementaryActionTag { DELAY_TAG, RETURN_TAG, SET_ALIAS_TAG, PREPARE_TAG, DESTROY_TAG, ABORT_TAG, SET_DATA_TAG, COPY_TAG, SET_MULTIPLEX_TAG, SET_DEMULTIPLEX_TAG, NEW_TAG, DELETE_TAG, SET_GLOBAL_BEHAVIOUR_TAG, RUN_TAG, STOP_TAG, SET_PARAMETERS_TAG, PLUG_TAG, SET_RGS_TAG, SET_OPACITY_TAG, SET_PRESENTATION_PRIORITY_TAG, SET_VISIBLE_DURATION_TAG, SET_TEMPORAL_TERMINATION_TAG, SET_CURRENT_TEMPORAL_POSITION_TAG, SET_VISIBLE_DURATION_POSITION_TAG, SET_SPEED_TAG, SET_TIMESTONES_TAG, SET_PERCEPTIBLE_SIZE_PROJECTION_TAG, SET_RESIZING_STRATEGY_TAG, SET_ASPECT_RATIO_PRESERVED_TAG, SET_VISIBLE_SIZE_TAG, SET_VISIBLE_SIZES_ADJUSTMENT_TAG, SET_BOX_TAG, SET_DEFAULT_BACKGROUND_TAG, SET_ATTACHMENT_POINT_TAG, SET_ATTACHMENT_POINT_POSITION_TAG, SET_VISIBLE_SIZES_ALIGNMENT_TAG, SET_MOVING_ABILITY_TAG, SET_RESIZING_ABILITY_TAG, SET_SCALING_ABILITY_TAG, SET_SCROLLING_ABILITY_TAG, SET_AUDIBLE_VOLUME_TAG, SET_AUDIBLE_COMPOSITION_EFFECT_TAG, SET_STREAM_CHOICE_TAG, SET_SELECTABILITY_TAG, SET_SELECTION_STATUS_TAG, SET_SELECTION_PRESENTATION_EFFECT_RESPONSIBILITY_TAG, SET_MODIFIABILITY_TAG, SET_MODIFICATION_STATUS_TAG, SET_MODIFICATION_PRESENTATION_EFFECT_RESPONSIBILITY_TAG, SET_BUTTON_STYLE_TAG, SET_SLIDER_STYLE_TAG, SET_ENTRY_FIELD_STYLE_TAG, SET_MENU_STYLE_TAG, SET_SCROLLING_LIST_STYLE_TAG, SET_NO_STYLE_TAG, NEW_CHANNEL_TAG, DELETE_CHANNEL_TAG, SET_CHANNEL_PERCEPTABILITY_TAG }; union ElementaryAction switch (ElementaryActionTag){ case DELAY_TAG: Delay delay; case RETURN_TAG: Return return; case SET_ALIAS_TAG: SetAlias set_alias; case PREPARE_TAG: sequence<MhTargetsParameter,1> prepare; case DESTROY_TAG: sequence<MhTargetsParameter,1> destroy; case ABORT_TAG: sequence<MhTargetsParameter,1> abort; case SET_DATA_TAG: SetData set_data; case COPY_TAG: Copy copy; case SET_MULTIPLEX_TAG: SetMultiplex set_multiplex; case SET_DEMULTIPLEX_TAG: SetDemultiplex set_demultiplex; case NEW_TAG: sequence<RtTargetsParameter,1> new; case DELETE_TAG: sequence<RtTargetsParameter,1> delete; case SET_GLOBAL_BEHAVIOUR_TAG: SetGlobalBehaviour set_global_behaviour; case RUN_TAG: sequence<RtSocketTargetsParameter,1> run; case STOP_TAG: sequence<RtSocketTargetsParameter,1> stop; case SET_PARAMETERS_TAG: SetParameters set_parameters; case PLUG_TAG: Plug plug; case SET_RGS_TAG: SetRGS set_RGS; case SET_OPACITY_TAG: SetOpacity set_opacity; case SET_PRESENTATION_PRIORITY_TAG: SetPresentationPriority set_presentation_priority; case SET_VISIBLE_DURATION_TAG: SetVisibleDuration set_visible_duration; case SET_TEMPORAL_TERMINATION_TAG: SetTemporalTermination set_temporal_termination; case SET_CURRENT_TEMPORAL_POSITION_TAG: SetCurrentTemporalPosition set_current_temporal_position; case SET_VISIBLE_DURATION_POSITION_TAG: SetVisibleDurationPosition set_visible_duration_position; case SET_SPEED_TAG: SetSpeed set_speed; case SET_TIMESTONES_TAG: SetTimestones set_timestones; case SET_PERCEPTIBLE_SIZE_PROJECTION_TAG: SetPerceptibleSizeProjection set_perceptible_size_projection; case SET_RESIZING_STRATEGY_TAG: SetResizingStrategy set_resizing_strategy; case SET_ASPECT_RATIO_PRESERVED_TAG: SetAspectRatioPreserved set_aspect_ratio_preserved; case SET_VISIBLE_SIZE_TAG: SetVisibleSize set_visible_size; case SET_VISIBLE_SIZES_ADJUSTMENT_TAG: SetVisibleSizesAdjustment set_visible_sizes_adjustment; case SET_BOX_TAG: SetBox set_box; case SET_DEFAULT_BACKGROUND_TAG: SetDefaultBackground set_default_background; case SET_ATTACHMENT_POINT_TAG: SetAttachmentPoint set_attachment_point; case SET_ATTACHMENT_POINT_POSITION_TAG: SetAttachmentPointPosition set_attachment_point_position; case SET_VISIBLE_SIZES_ALIGNMENT_TAG: SetVisibleSizesAlignment set_visible_sizes_alignment; case SET_MOVING_ABILITY_TAG: SetMovingAbility set_moving_ability; case SET_RESIZING_ABILITY_TAG: SetResizingAbility set_resizing_ability; case SET_SCALING_ABILITY_TAG: SetScalingAbility set_scaling_ability; case SET_SCROLLING_ABILITY_TAG: SetScrollingAbility set_scrolling_ability; case SET_AUDIBLE_VOLUME_TAG: SetAudibleVolume set_audible_volume; case SET_AUDIBLE_COMPOSITION_EFFECT_TAG: SetAudibleCompositionEffect set_audible_composition_effect; case SET_STREAM_CHOICE_TAG: SetStreamChoice set_stream_choice; case SET_SELECTABILITY_TAG: SetSelectability set_selectability; case SET_SELECTION_STATUS_TAG: SetSelectionStatus set_selection_status; case SET_SELECTION_PRESENTATION_EFFECT_RESPONSIBILITY_TAG: SetSelectionPresentationEffectResponsibility set_selection_presentation_effect_responsibility; case SET_MODIFIABILITY_TAG: SetModifiability set_modifiability; case SET_MODIFICATION_STATUS_TAG: SetModificationStatus set_modification_status; case SET_MODIFICATION_PRESENTATION_EFFECT_RESPONSIBILITY_TAG: SetModificationPresentationEffectResponsibility set_modification_presentation_effect_responsibility; case SET_BUTTON_STYLE_TAG: SetButtonStyle set_button_style; case SET_SLIDER_STYLE_TAG: SetSliderStyle set_slider_style; case SET_ENTRY_FIELD_STYLE_TAG: SetEntryFieldStyle set_entry_field_style; case SET_MENU_STYLE_TAG: SetMenuStyle set_menu_style; case SET_SCROLLING_LIST_STYLE_TAG: SetScrollingListStyle set_scrolling_list_style; case SET_NO_STYLE_TAG: sequence<RtSocketTargetsParameter,1> set_no_style; case NEW_CHANNEL_TAG: NewChannel new_channel; case DELETE_CHANNEL_TAG: sequence<ChannelTargetsParameter,1> delete_channel; case SET_CHANNEL_PERCEPTABILITY_TAG: SetChannelPerceptability set_channel_perceptability; }; // Corresponding MHEG datatype: Keywords //======================================================================== typedef sequence<string> Keywords; // Corresponding MHEG datatype: Description //======================================================================== struct Description { sequence<string,1> name; sequence<string,1> owner; sequence<string,1> version; sequence<string,1> date; sequence<Keywords,1> keywords; sequence<string,1> copyright; sequence<string,1> licence; sequence<string,1> comment; }; // Corresponding MHEG datatype: Class-Identifier //======================================================================== enum ClassIdentifier { ACTION_CLASS, LINK_CLASS, SCRIPT_CLASS, CONTENT_CLASS, MULTIPLEXED_CONTENT_CLASS, COMPOSITE_CLASS, CONTAINER_CLASS, DESCRIPTOR_CLASS }; // Corresponding MHEG datatype: OBJECTIDENTIFIER //======================================================================== struct OBJECTIDENTIFIER { unsigned short root; unsigned short arc1; unsigned short arc2; unsigned short arc3; }; // Corresponding MHEG datatype: Synchro-Indicator //======================================================================== enum SynchroIndicator { SERIAL, PARALLEL }; // Corresponding MHEG datatype: Synchro-Indicator-Macro //======================================================================== struct SynchroIndicatorMacro { MacroDefId macro_def_id; sequence<SynchroIndicator,1> synchro_indicator; }; // Corresponding MHEG datatype: Synchro-Indicator-Parameter //======================================================================== enum SynchroIndicatorParameterTag { SYNCHRO_INDICATOR_TAG, SYNCHRO_INDICATOR_MACRO_TAG }; union SynchroIndicatorParameter switch (SynchroIndicatorParameterTag){ case SYNCHRO_INDICATOR_TAG: SynchroIndicator synchro_indicator; case SYNCHRO_INDICATOR_MACRO_TAG: SynchroIndicatorMacro synchro_indicator_macro; }; // Corresponding MHEG datatype: Performances //======================================================================== typedef long Performances; // Corresponding MHEG datatype: Performances-Macro //======================================================================== struct PerformancesMacro { MacroDefId macro_def_id; sequence<Performances,1> performances; }; // Corresponding MHEG datatype: Performances-Parameter //======================================================================== enum PerformancesParameterTag { PERFORMANCES_TAG, PERFORMANCES_MACRO_TAG }; union PerformancesParameter switch (PerformancesParameterTag){ case PERFORMANCES_TAG: Performances performances; case PERFORMANCES_MACRO_TAG: PerformancesMacro performances_macro; }; interface ActionClass; // Corresponding MHEG datatype: Action //======================================================================== enum ActionTag { ACTION_REFERENCE_TAG, ACTION_CLASS_TAG }; union Action switch (ActionTag){ case ACTION_REFERENCE_TAG: MhObjectReference action_reference; case ACTION_CLASS_TAG: ActionClass action_class; }; // Corresponding MHEG datatype: Synchronized-Action //======================================================================== enum SynchronizedActionTag { ELEMENTARY_ACTION_TAG, ACTION_TAG }; union SynchronizedAction switch (SynchronizedActionTag){ case ELEMENTARY_ACTION_TAG: ElementaryAction elementary_action; case ACTION_TAG: Action action; }; // Corresponding MHEG datatype: Action-Class //======================================================================== interface ActionClass { attribute OBJECTIDENTIFIER object_identification; attribute sequence<MHEGIdentifier,1> mheg_identifier; attribute sequence<Description,1> the_description; attribute sequence<SynchroIndicatorParameter,1> synchro_indicator_parameter; attribute sequence<TargetsParameter,1> target_set_parameter; attribute sequence<PerformancesParameter,1> performances_parameter; attribute sequence<SynchronizedAction> synchronized_actions; }; // Corresponding MHEG datatype: Logical-Operator //======================================================================== enum LogicalOperator { AND, OR, XOR, NAND, NOR, NXOR }; // Corresponding MHEG datatype: Comparison-Operator //======================================================================== enum ComparisonOperator { EQUAL, NOT_EQUAL, GREATER, GREATER_EQUAL, LESS, LESS_EQUAL }; // Corresponding MHEG datatype: Comparison-Value //======================================================================== enum ComparisonValueTag { COMPARISON_VALUE_GENERIC_VALUE_TAG, COMPARISON_VALUE_COMPARISON_VALUE_CONSTANT_TAG }; union ComparisonValue switch (ComparisonValueTag){ case COMPARISON_VALUE_GENERIC_VALUE_TAG: GenericValue generic_value; case COMPARISON_VALUE_COMPARISON_VALUE_CONSTANT_TAG: ComparisonValueConstant comparison_value_constant; }; // Corresponding MHEG datatype: Evaluated-Condition //======================================================================== struct EvaluatedCondition { ComparisonOperator comparison_operator; ComparisonValue comparison_value; }; // Corresponding MHEG datatype: Previous-Condition //======================================================================== enum PreviousConditionTag { EVALUATED_CONDITION_TAG, NEGATION_TAG }; union PreviousCondition switch (PreviousConditionTag){ case EVALUATED_CONDITION_TAG: EvaluatedCondition evaluated_condition; }; // Corresponding MHEG datatype: Generic-Condition //======================================================================== struct GenericCondition { EvaluatedValue source_value; sequence<PreviousCondition,1> previous_condition; EvaluatedCondition current_condition; }; // Corresponding MHEG datatype: Link-Condition //======================================================================== enum LinkConditionTag { LOGICAL_COMBINATION_TAG, GENERIC_CONDITION_TAG }; union LinkCondition switch (LinkConditionTag){ case LOGICAL_COMBINATION_TAG: struct LogicalCombination { sequence<LogicalOperator,1> logical_operator; sequence<LinkCondition> conditions; } logical_combination; case GENERIC_CONDITION_TAG: GenericCondition generic_condition; }; // Corresponding MHEG datatype: Macro-Resolution-Parameter //======================================================================== struct MacroResolutionParameter { MacroDefId macro_def_id; sequence<GenericValue,1> usage_value; }; // Corresponding MHEG datatype: Link-Effect //======================================================================== struct LinkEffect { sequence<sequence<MacroResolutionParameter>,1> macro_resolution; Action action; }; // Corresponding MHEG datatype: Link-Class //======================================================================== interface LinkClass { attribute OBJECTIDENTIFIER object_identification; attribute sequence<MHEGIdentifier,1> mheg_identifier; attribute sequence<Description,1> the_description; attribute sequence<LinkCondition,1> link_condition; attribute LinkEffect link_effect; }; // Corresponding MHEG datatype: Script-Inclusion //======================================================================== enum ScriptInclusionTag { OCTETSTRING_TAG, BITSTRING_TAG }; union ScriptInclusion switch (ScriptInclusionTag){ case OCTETSTRING_TAG: string octetstring; case BITSTRING_TAG: string bitstring; }; // Corresponding MHEG datatype: Script-Data //======================================================================== enum ScriptDataTag { SCRIPT_INCLUSION_TAG, DATA_REFERENCE_TAG }; union ScriptData switch (ScriptDataTag){ case SCRIPT_INCLUSION_TAG: ScriptInclusion script_inclusion; case DATA_REFERENCE_TAG: DataReference data_reference; }; // Corresponding MHEG datatype: Script-Class //======================================================================== interface ScriptClass { attribute OBJECTIDENTIFIER object_identification; attribute sequence<MHEGIdentifier,1> mheg_identifier; attribute sequence<Description,1> the_description; attribute sequence<ScriptClassification,1> script_classification; attribute ScriptHook script_hook_information; attribute ScriptData script_data; }; // Corresponding MHEG datatype: Data-Inclusion //======================================================================== enum DataInclusionTag { DATA_INCLUSION_OCTET_STRING_TAG, DATA_INCLUSION_BIT_STRING_TAG }; union DataInclusion switch (DataInclusionTag){ case DATA_INCLUSION_OCTET_STRING_TAG: string octet_string; case DATA_INCLUSION_BIT_STRING_TAG: string bit_string; }; // Corresponding MHEG datatype: Content-Data //======================================================================== enum ContentDataTag { CONTENT_DATA_DATA_INCLUSION_TAG, CONTENT_DATA_DATA_REFERENCE_TAG }; union ContentData switch (ContentDataTag){ case CONTENT_DATA_DATA_INCLUSION_TAG: DataInclusion data_inclusion; case CONTENT_DATA_DATA_REFERENCE_TAG: DataReference data_reference; }; // Corresponding MHEG datatype: Content-Class //======================================================================== interface ContentClass { attribute OBJECTIDENTIFIER object_identification; attribute MHEGIdentifier mheg_identifier; attribute Description the_description; attribute ContentClassification classification; attribute OriginalPerception original_perception; attribute ContentHook content_hook; attribute ContentData content_data; }; // Corresponding MHEG datatype: Multiplexed-Stream //======================================================================== struct MultiplexedStream { sequence<sequence<long>,1> stream_identifier; sequence<ContentClassification,1> stream_classification; sequence<OriginalPerception,1> stream_original_perception; ContentHook hook_stream; }; // Corresponding MHEG datatype: Multiplexed-Content-Class //======================================================================== interface MultiplexedContentClass { attribute OBJECTIDENTIFIER object_identification; attribute sequence<MHEGIdentifier,1> mheg_identifier; attribute sequence<Description,1> the_description; attribute sequence<ContentClassification,1> mux_classification; attribute sequence<OriginalPerception,1> original_perception; attribute ContentHook mux_hook; attribute ContentData mux_data; attribute sequence<sequence<MultiplexedStream>,1> multiplexed_streams; }; // Corresponding MHEG datatype: Link //======================================================================== enum LinkTag { LINK_REFERENCE_TAG, LINK_CLASS_TAG }; union Link switch (LinkTag){ case LINK_REFERENCE_TAG: MhObjectReference mh_object_reference; case LINK_CLASS_TAG: LinkClass link; }; // Corresponding MHEG datatype: Specific-Behaviour //======================================================================== enum SpecificBehaviourTag { ACTIONS_TAG, LINKS_TAG }; union SpecificBehaviour switch (SpecificBehaviourTag){ case ACTIONS_TAG: sequence<Action> actions; case LINKS_TAG: sequence<Link> links; }; // Corresponding MHEG datatype: Availability-Start-Up // Corresponding MHEG datatype: Availability-Close-Down // Corresponding MHEG datatype: Rt-Availability-Start-Up //======================================================================== enum PredefinedBehaviourTag { PREDEFINED_BEHAVIOUR_LINK_CLASS_TAG, PREDEFINED_BEHAVIOUR_INHIBIT_TAG }; union PredefinedBehaviour switch (PredefinedBehaviourTag){ case PREDEFINED_BEHAVIOUR_LINK_CLASS_TAG: LinkClass link_class; }; // Corresponding MHEG datatype: Predefined-Behaviour //======================================================================== struct PredefinedBehaviours { sequence<PredefinedBehaviour,1> availability_start_up; sequence<PredefinedBehaviour,1> availability_close_down; sequence<PredefinedBehaviour,1> rt_availability_start_up; sequence<LinkClass,1> rt_availability_close_down; }; // Corresponding MHEG datatype: Composition-Behaviour //======================================================================== struct CompositionBehaviour { PredefinedBehaviours predefined_behaviours; SpecificBehaviour specific_behaviour; }; interface CompositeClass; // Corresponding MHEG datatype: Component //======================================================================== enum ComponentTag { MH_OBJECT_REFERENCE_TAG, CONTENT_TAG, MULTIPLEXED_CONTENT_TAG, COMPOSITE_TAG }; union Component switch (ComponentTag){ case MH_OBJECT_REFERENCE_TAG: MhObjectReference mh_object_reference; case CONTENT_TAG: ContentClass content; case MULTIPLEXED_CONTENT_TAG: MultiplexedContentClass multiplexed_content; case COMPOSITE_TAG: CompositeClass composite; }; // Corresponding MHEG datatype: Associated-Model //======================================================================== enum AssociatedModelTag { ASSOCIATED_MODEL_COMPONENT_TAG, ASSOCIATED_MODEL_ASSOCIATED_LABEL_TAG }; union AssociatedModel switch (AssociatedModelTag){ case ASSOCIATED_MODEL_COMPONENT_TAG: Component component; case ASSOCIATED_MODEL_ASSOCIATED_LABEL_TAG: string associated_label; }; // Corresponding MHEG datatype: Element //======================================================================== struct Element { long element_index; AssociatedModel associated_model; }; // Corresponding MHEG datatype: Composition //======================================================================== struct Composition { long nb_elements; sequence<Element> elements; }; // Corresponding MHEG datatype: Composite-Class //======================================================================== interface CompositeClass { attribute OBJECTIDENTIFIER object_identification; attribute sequence<MHEGIdentifier,1> mheg_identifier; attribute sequence<Description,1> the_description; attribute sequence<CompositionBehaviour,1> composition_behaviour; attribute sequence<OriginalPerception,1> original_perception; attribute Composition elements; }; // Corresponding MHEG datatype: Container-Default-Behaviour //======================================================================== struct ContainerDefaultBehaviour { sequence<PredefinedBehaviour,1> availability_start_up; sequence<PredefinedBehaviour,1> availability_close_down; }; interface ContainerClass; interface DescriptorClass; // Corresponding MHEG datatype: Mh-Element //======================================================================== enum MhElementTag { MH_ELEMENT_MH_OBJECT_REFERENCE_TAG, MH_ELEMENT_ACTION_TAG, MH_ELEMENT_LINK_TAG, MH_ELEMENT_SCRIPT_TAG, MH_ELEMENT_CONTENT_TAG, MH_ELEMENT_MUX_CONTENT_TAG, MH_ELEMENT_COMPOSITE_TAG, MH_ELEMENT_CONTAINER_TAG, MH_ELEMENT_DESCRIPTOR_TAG }; union MhElement switch (MhElementTag){ case MH_ELEMENT_MH_OBJECT_REFERENCE_TAG: MhObjectReference mh_object_reference; case MH_ELEMENT_ACTION_TAG: ActionClass action; case MH_ELEMENT_LINK_TAG: LinkClass link; case MH_ELEMENT_SCRIPT_TAG: ScriptClass script; case MH_ELEMENT_CONTENT_TAG: ContentClass content; case MH_ELEMENT_MUX_CONTENT_TAG: MultiplexedContentClass mux_content; case MH_ELEMENT_COMPOSITE_TAG: CompositeClass composite; case MH_ELEMENT_CONTAINER_TAG: ContainerClass container; case MH_ELEMENT_DESCRIPTOR_TAG: DescriptorClass descriptor; }; // Corresponding MHEG datatype: Container-Class //======================================================================== interface ContainerClass { attribute OBJECTIDENTIFIER object_identification; attribute sequence<MHEGIdentifier,1> mheg_identifier; attribute sequence<Description,1> the_description; attribute ContainerDefaultBehaviour container_default_behaviour; attribute sequence<MhElement> container_elements; }; // Corresponding MHEG datatype: Delay-Bounds //======================================================================== struct DelayBounds { long lower_value; long upper_value; }; // Corresponding MHEG datatype: Degradation //======================================================================== enum Degradation { GUARANTEED, BEST_EFFORT, NOT_GUARANTEED }; // Corresponding MHEG datatype: Quality-Of-Service //======================================================================== struct QualityOfService { sequence<Degradation,1> degradation; sequence<boolean,1> reliability; sequence<DelayBounds,1> delay_bounds; sequence<long,1> jitter_bounds; }; // Corresponding MHEG datatype: Script-Class-Information //======================================================================== struct ScriptClassInformation { sequence<ScriptClassification,1> script_classification; sequence<ScriptHook,1> script_hook; }; // Corresponding MHEG datatype: Alternative-Object //======================================================================== struct AlternativeObject { MhObjectReference content_or_mux_object; sequence<ContentHook,1> alternative_hook; sequence<MhObjectReference,1> alternative_descriptor; sequence<string,1> alternative_keyword; }; // Corresponding MHEG datatype: Content-Class-Information //======================================================================== struct ContentClassInformation { sequence<ContentClassification,1> content_classification; sequence<ContentHook,1> content_hook; sequence<sequence<AlternativeObject>,1> alternative_object; }; // Corresponding MHEG datatype: Stream-Information //======================================================================== struct StreamInformation { sequence<StreamIdentifier,1> stream_identifier; sequence<ContentClassInformation,1> content_class_information; }; // Corresponding MHEG datatype: Multiplexed-Content-Class-Information //======================================================================== struct MultiplexedContentClassInformation { sequence<ContentClassification,1> multiplexed_content_classification; sequence<ContentHook,1> multiplexed_content_hook; sequence<long,1> stream_number; sequence<sequence<StreamInformation>,1> stream_information; sequence<sequence<AlternativeObject>,1> alternative_object; }; // Corresponding MHEG datatype: Class-Specific //======================================================================== enum ClassSpecificTag { SCRIPT_CLASS_INFORMATION_TAG, CONTENT_CLASS_INFORMATION_TAG, MULTIPLEXED_CONTENT_CLASS_INFORMATION_TAG }; union ClassSpecific switch (ClassSpecificTag){ case SCRIPT_CLASS_INFORMATION_TAG: ScriptClassInformation script_class_information; case CONTENT_CLASS_INFORMATION_TAG: ContentClassInformation content_class_information; case MULTIPLEXED_CONTENT_CLASS_INFORMATION_TAG: MultiplexedContentClassInformation multiplexed_content_class_information; }; // Corresponding MHEG datatype: Object-Information //======================================================================== struct ObjectInformation { sequence<long,1> object_size; sequence<ClassIdentifier,1> class_identifier; sequence<ClassSpecific,1> class_specific; sequence<QualityOfService,1> quality_of_service; }; // Corresponding MHEG datatype: Related-Object //======================================================================== struct RelatedObject { MhObjectReference object_reference; sequence<ObjectInformation,1> object_information; }; // Corresponding MHEG datatype: System-Readable-Material //======================================================================== enum SystemReadableMaterialTag { SYSTEM_READABLE_MATERIAL_BITSTRING_TAG, SYSTEM_READABLE_MATERIAL_OCTETSTRING_TAG }; union SystemReadableMaterial switch (SystemReadableMaterialTag){ case SYSTEM_READABLE_MATERIAL_BITSTRING_TAG: string bitstring; case SYSTEM_READABLE_MATERIAL_OCTETSTRING_TAG: string octetstring; }; // Corresponding MHEG datatype: General-Information //======================================================================== struct GeneralInformation { sequence<string,1> readme; sequence<SystemReadableMaterial,1> system_readable_material; }; // Corresponding MHEG datatype: Media-Type //======================================================================== enum MediaType { AUDIBLE, LEFT_AUDIBLE, RIGHT_AUDIBLE, VISIBLE }; // Corresponding MHEG datatype: Predefined-Selection-Mode //======================================================================== enum PredefinedSelectionMode { MOUSE_BUTTON_1_DOWN, MOUSE_BUTTON_2_DOWN, MOUSE_BUTTON_3_DOWN, MOUSE_BUTTONS_1_2_DOWN, MOUSE_BUTTONS_1_3_DOWN, MOUSE_BUTTONS_2_3_DOWN, MOUSE_BUTTON_1_UP, MOUSE_BUTTON_2_UP, MOUSE_BUTTON_3_UP, MOUSE_BUTTONS_1_2_UP, MOUSE_BUTTONS_1_3_UP, MOUSE_BUTTONS_2_3_UP, MOUSE_SINGLE_CLICK_ON_BUTTON_1, MOUSE_SINGLE_CLICK_ON_BUTTON_2, MOUSE_SINGLE_CLICK_ON_BUTTON_3, MOUSE_SINGLE_CLICK_ON_BUTTONS_12, MOUSE_SINGLE_CLICK_ON_BUTTONS_13, MOUSE_SINGLE_CLICK_ON_BUTTONS_23, MOUSE_DOUBLE_CLICK_ON_BUTTON_1, MOUSE_DOUBLE_CLICK_ON_BUTTON_2, MOUSE_DOUBLE_CLICK_ON_BUTTON_3, MOUSE_DOUBLE_CLICK_ON_BUTTONS_12, MOUSE_DOUBLE_CLICK_ON_BUTTONS_13, MOUSE_DOUBLE_CLICK_ON_BUTTONS_23, MOUSE_TRIPLE_CLICK_ON_BUTTON_1, MOUSE_TRIPLE_CLICK_ON_BUTTON_2, MOUSE_TRIPLE_CLICK_ON_BUTTON_3, MOUSE_TRIPLE_CLICK_ON_BUTTONS_12, MOUSE_TRIPLE_CLICK_ON_BUTTONS_13, MOUSE_TRIPLE_CLICK_ON_BUTTONS_23, MOUSE_ENTER, MOUSE_LEAVE, MOUSE_POINTER_MOTION, MOUSE_BUTTON_1_MOTION, MOUSE_BUTTON_2_MOTION, MOUSE_BUTTON_3_MOTION, MOUSE_BUTTONS_1_2_MOTION, MOUSE_BUTTONS_1_3_MOTION, MOUSE_BUTTONS_2_3_MOTION, KEY_PRESS, KEY_RELEASE }; // Corresponding MHEG datatype: Physical-Selection-Mode //======================================================================== enum PhysicalSelectionModeTag { PRIVATE_MODE_TAG, PREDEFINED_TAG }; union PhysicalSelectionMode switch (PhysicalSelectionModeTag){ case PRIVATE_MODE_TAG: long private_mode; case PREDEFINED_TAG: PredefinedSelectionMode predefined; }; // Corresponding MHEG datatype: Selection-Mode //======================================================================== struct SelectionMode { long logical_selection_mode; sequence<PhysicalSelectionMode,1> physical_selection_mode; }; // Corresponding MHEG datatype: Predefined-Modification-Mode //======================================================================== enum PredefinedModificationMode { MEDIA_EDITOR }; // Corresponding MHEG datatype: Physical-Modification-Mode //======================================================================== enum PhysicalModificationModeTag { PHYSICAL_MODIFICATION_MODE_NUMERIC_TAG, PHYSICAL_MODIFICATION_MODE_PREDEFINED_TAG }; union PhysicalModificationMode switch (PhysicalModificationModeTag){ case PHYSICAL_MODIFICATION_MODE_NUMERIC_TAG: long numeric; case PHYSICAL_MODIFICATION_MODE_PREDEFINED_TAG: PredefinedModificationMode predefined; }; // Corresponding MHEG datatype: Modification-Mode //======================================================================== struct ModificationMode { long logical_modification_mode; sequence<PhysicalModificationMode,1> physical_modification_mode; }; // Corresponding MHEG datatype: Channel-Information //======================================================================== struct ChannelInformation { sequence<ChannelIdentifier,1> channel_id; sequence<long,1> x_min; sequence<long,1> x_max; sequence<long,1> y_min; sequence<long,1> y_max; sequence<long,1> z_min; sequence<long,1> z_max; sequence<long,1> x_granularity; sequence<long,1> y_granularity; sequence<long,1> z_granularity; sequence<long,1> t_granularity; sequence<long,1> f_min; sequence<long,1> f_max; sequence<long,1> audio_dynamic; sequence<MediaType,1> media_type; sequence<SelectionMode,1> selection_mode; sequence<ModificationMode,1> modification_mode; }; // Corresponding MHEG datatype: Interaction-Style-Information //======================================================================== enum InteractionStyleInformation { BUTTON, SLIDER, ENTRY_FIELD, MENU, SCROLLING_LIST }; // Corresponding MHEG datatype: Descriptor-Class //======================================================================== interface DescriptorClass { attribute OBJECTIDENTIFIER object_identification; attribute sequence<MHEGIdentifier,1> mheg_identifier; attribute sequence<Description,1> the_description; attribute sequence<sequence<RelatedObject>,1> related_objects; attribute sequence<sequence<MhObjectReference>,1> other_descriptors; attribute sequence<GeneralInformation,1> general_information; attribute sequence<sequence<ChannelInformation>,1> channel_information; attribute sequence<sequence<InteractionStyleInformation>,1> interaction_styles_information; }; }; // end of module